﻿/******************************************************************************
* Base Portal Styles
******************************************************************************/

/******************************************************************************
* Universal style - These affect everthing
******************************************************************************/

body {
    background-color: #E9F0F5;
    margin: 0;
    font-family: verdana, helvetica, arial, sans-serif;
    font-size: small;
    color: #000;
}

    /* Containers */
    body.popup-container {
        background: white;
        max-width: 960px;
        margin-left: auto;
        margin-right: auto;
    }

        body.popup-container p {
            margin-right: 1em;
        }

        body.popup-container input[type="text"], body.popup-container input[type="password"], body.popup-container input[type="file"], body.popup-container input[type="number"], body.popup-container select, body.popup-container textarea {
            width: 100%;
        }

        body.popup-container input.date-time-picker[type="text"] {
            width: 180px;
        }

.ui-dialog {
    background: white !important;
}

.container {
    margin-left: auto;
    margin-right: auto;
    width: 960px;
    background-color: #FFF;
    position: relative;
    height: inherit;
}

.inner-container {
    margin: 0 auto;
    width: 95%;
    position: relative;
    overflow: hidden;
    background: inherit;
}

.left-container {
    position: relative;
    width: 29%;
    float: left;
    background: inherit;
    margin-right: 1%;
}

.center-container {
    position: relative;
    width: 40%;
    float: left;
    background: inherit;
}

.right-container {
    position: relative;
    float: right;
    width: 29%;
    background: inherit;
}

.center-container-one-side {
    position: relative;
    width: 69%;
    float: left;
    background: inherit;
}

.center-container-alone {
    position: relative;
    width: 100%;
    background: inherit;
}

.header-container {
    border-bottom: 1px solid #BEBEBE;
    background: inherit;
    color: #000;
}

.expandable-container {
    max-height: 380px;
    overflow-y: auto;
}

.profile-container {
    position: relative;
    display: block;
}

    .profile-container label {
        display: inline;
    }

.profile-item-container {
    position: relative;
    float: right;
    width: 66%;
    padding-right: 10px;
}

    .profile-item-container label {
        display: inline;
        margin-right: 10px;
    }

    .profile-item-container input {
        margin-right: 5px;
    }

    .profile-item-container ul {
        list-style: none;
        -webkit-padding-start: 0px;
        -webkit-margin-before: 0px;
        -webkit-margin-after: 0px;
        -webkit-margin-start: 0px;
        -webkit-margin-end: 0px;
        display: inline;
        padding: 0px;
    }

    .profile-item-container li {
        display: inline-block;
        width: 18%;
        vertical-align: top;
    }

    .profile-item-container .yes-no li {
        min-width: 18%;
        max-width: 49%;
        width: auto;
    }

    .profile-item-container .slider-container span {
        position: relative;
        width: 19%;
        display: none;
        float: none;
        cursor: pointer;
        word-wrap: break-word;
    }

        .profile-item-container .slider-container span:nth-child(5) {
            width: 20%;
        }

.popup-container .profile-item-container .slider-container span:nth-child(5) {
    width: 18%;
}

.screen-reader-only {
    position: absolute;
    left: -10000px;
    top: -10000px;
}

/* IE8 hacks, because it doesn't support real css */
.popup-container .ie8 .profile-item-container .slider-container span {
    width: 18%;
}
/* End IE8 hacks */

.radio-button-input-container .LabelContainer {
    padding-top: 5px;
}

.radio-button-input-container td {
    padding-right: 20px;
}

.cart-item-container {
    margin: 0.5em 20px;
    font-size: 8pt;
}

.item-description-container {
    float: left;
    margin-bottom: 10px;
    max-width: 69%;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

.item-control-container {
    width: 30%;
    float: right;
    margin-bottom: 10px;
}

.search-container {
    float: left;
    width: 33%;
}

    .search-container input[type="text"], .search-container input[type="password"], .search-container input[type="file"], .search-container input[type="number"], .search-container select, .search-container textarea {
        width: 90%;
    }

.results-container {
    float: right;
    width: 66%;
}

.visible-container {
    border: 1px solid #BEBEBE;
}

.banner-container {
    width: 380px;
    font-size: 22px;
    padding: 3px 10px 3px 10px;
    text-align: center;
    text-shadow: 0px 1px 3px #777;
    line-height: 36px;
    border: 1px solid #666;
    border-radius: 8px;
    -moz-border-radius: 8px;
    -webkit-border-radius: 8px;
    -o-border-radius: 8px;
    -moz-box-shadow: 1px 1px 2px Gray;
    -webkit-box-shadow: 1px 1px 2px Gray;
    box-shadow: 1px 1px 2px Gray;
    position: absolute;
    top: 10px;
    left: 280px;
    overflow-y: visible;
    z-index: 1;
    color: white;
}

.inline-container {
    display: inline;
}

#footer .banner-container {
    position: inherit;
    margin: 10px auto 0 auto;
}

.banner-maintenance {
    font-size: 16px;
}

.tooltip {
    position: absolute;
    z-index: 3000;
    display: none;
    padding: 5px;
    white-space: normal;
}

    .tooltip p {
        -webkit-margin-before: 0px;
        -webkit-margin-after: 0px;
        -webkit-margin-start: 0px;
        -webkit-margin-end: 1em;
        margin-top: 5px;
        margin-bottom: 5px;
    }

.message-panel {
    margin-bottom: 5px;
    padding: 5px;
}

    .message-panel .message-status {
        float: left;
        min-width: 48px;
    }

        .message-panel .message-status span {
            vertical-align: text-top;
        }

    .message-panel .message-attachment {
        float: right;
        width: 24px;
    }

    .message-panel .date {
        float: right;
    }

    .message-panel input[type="image"] {
        padding: 0;
        border: none;
        background-color: transparent;
    }

    .message-panel.received-message {
        margin-right: 20%;
    }

    .message-panel.sent-message {
        margin-left: 20%;
        background: none;
    }

.popup-action {
    cursor: pointer;
    padding-left: 2px;
}

    .popup-action img {
        vertical-align: middle;
        border: none;
    }

div.popup iframe {
    border: none;
    width: 600px;
    height: 550px;
}

/* Links */
a, a:link, a:visited, a:active /* default link look & behaviour  */ {
    text-decoration: none;
    color: #3C78B5;
}

    a:hover, a:active {
        text-decoration: underline;
    }

    a.current-link {
        font-weight: bold;
    }

.ui-widget-content a.original-colour /* jQuery UI class, link colour override */ {
    color: #3C78B5;
}

/**********************************************************************
*   ASP.NET generated classes (can't change)
**********************************************************************/

a.aspNetDisabled {
    color: Gray;
    text-decoration: none;
    cursor: default;
}

/**********************************************************************
*   Standard web controls and labels
**********************************************************************/

label {
    display: block;
    margin-left: 2px;
}

    label[for*="rdo"],
    label[for*="rbt"],
    label[for*="rbl"],
    label[for*="opt"],
    label[for*="chk"],
    label[for*="cbl"],
    .CheckBox-label, /* This is data driven so 'CheckBox' can't be changed */
    .radio-button-list label {
        display: inline;
        margin-left: 0;
        margin-right: 10px;
    }

td.LabelCell label {
    display: inline;
}

.radio-button-list {
    margin-left: 20px;
}

ul.button-list li {
    line-height: 32px;
}

input[type="submit"].ui-button {
    overflow: visible;
}

input, select, textarea {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    max-width: 100%;
}

    input[type="submit"][value="..."] {
        padding-left: 2px;
        padding-right: 2px;
    }

    input[type="text"], input[type="password"], input[type="file"], input[type="number"], select, textarea {
        width: 50%;
        border: 1px solid #DADADA;
        background-color: #F8F8F8;
        padding: 5px;
        margin: 0;
        -moz-border-radius: 4px;
        -webkit-border-radius: 4px;
        -o-border-radius: 4px;
        border-radius: 4px;
        font-family: inherit;
        font-size: inherit;
    }

.two-column input[type="text"], .two-column input[type="password"], .two-column input[type="file"], .two-column input[type="number"], .two-column select:not(.time-drop-down), .two-column textarea, .two-column textarea.big-text-area, .two-column textarea.BigTextArea /* Keep for site file compatibility */ {
    width: 81%; /* Made 81% instead of 80% to resolve a rounding issue that was causing borders on drop-downs to disappear */
}

textarea {
    height: 5em;
    font-family: inherit;
    font-size: inherit;
    overflow: auto;
    resize: none;
}

    textarea.big-text-area, textarea.BigTextArea /* Keep for site file compatibility */ {
        height: 10em;
        width: 75%;
    }

input[type="radio"] {
    display: inline;
    margin-left: 2px;
    margin-right: 2px;
}

select.credit-card-date-dropdown {
    width: 20%;
}

dl {
    width: 100%;
    display: block;
    margin-top: 0px;
}

dt {
    margin: 0;
    padding: 0;
    margin-top: 13px;
    float: left;
    display: inline-block;
    width: 25%;
    clear: both;
    font-weight: bold;
}

dd {
    margin: 0;
    padding: 0;
    margin-top: 13px;
    float: left;
    width: 75%;
    display: inline-block;
}

dl.LongLabel dt {
    width: 33%;
}

dl.LongLabel dd {
    width: 66%;
}

/******************************************************************************
*	Miscellaneous
******************************************************************************/

#header /*	The header at the top of each page (customized for each site) */ {
    background: transparent;
    height: inherit;
    width: 100%;
    display: inline-block;
    position: absolute;
}

#footer /*	The footer at the bottom of each page (customized for each site)	*/ {
    background: transparent url(../images/title-bg.gif) repeat-x scroll left top;
    margin-top: 4em;
    padding-bottom: 2em;
    font-size: 0.8em;
    text-align: center;
    color: #8A8C8F;
    width: 100%;
    border-top: 1px solid #E9F0F5;
    overflow: hidden;
}

.textBlock /* Keep for site file compatibility */ {
    padding-left: 20px;
}

.right-align, .right-align input {
    text-align: right;
}

.page-info {
    float: right;
    padding-bottom: 3px;
    padding-top: 36px;
    padding-right: 0px;
    margin: 0px;
    font-family: Arial, Sans-Serif;
    letter-spacing: 1px;
}

.text-block-line-height {
    line-height: 1.6em;
    display: inline-block;
    width: 100%;
}

.top-left-align {
    text-align: left;
    vertical-align: text-top;
}

.shadow {
    -moz-box-shadow: 0 0 5px rgba(0,0,0,.2);
    -webkit-box-shadow: 0 0 5px rgba(0,0,0,.2);
    box-shadow: 0 0 5px rgba(0,0,0,.2);
}

.time-drop-down {
    width: 70px;
}

img.loading {
    padding-top: 250px;
    padding-left: 250px;
    vertical-align: top;
    display: block;
}

img.loading-gif {
    display: none;
    height: 28px;
    vertical-align: bottom;
}

.paragraph {
    margin-top: 13px;
    margin-bottom: 13px;
}

.float-left {
    margin-right: 5px;
}

.horizontal-scroll {
    overflow-x: auto;
    overflow-y: hidden; /* Hopefully this will force IE10 to hide the unwanted scroll bar... */
}

.debug-summary {
    border: 1px dotted red;
    padding: 2px;
}

    .debug-summary table:not(:last-child) {
        margin-bottom: 20px;
    }

    .debug-summary table tr td {
        vertical-align: top;
        border-bottom: 1px solid #D1D1D1;
    }

        .debug-summary table tr td:first-child {
            color: #696969;
            padding-right: 8px;
        }

.sub-title {
    display: inline-block;
}

/******************************************************************************
*	DATA GRID VIEW STYLES - Keep for site file compatibility
******************************************************************************/

.DGHeaderRow {
    border: solid 1px #CCCCCC;
    color: #003366;
    font-weight: bold;
    background-color: #EEEEEE;
    padding: 3px 1px 1px 5px;
}

.DGRowDetail {
    border: solid 1px #CCCCCC;
    height: 2.1em;
}

/*************************************************************
*  EntryLookupPopup Control Classes                          *
*************************************************************/

.entry-detail-column {
    width: 23%;
}

.select-column {
    width: 8%;
}

/******************************************************************************
*	CONTROL STYLES
******************************************************************************/

.command-button, .CommandButton /* Keep for site file compatibility */ {
    padding: 5px;
    border: 1px solid #DADADA;
    margin: 0;
    background-color: #F8F8F8;
    border-radius: 4px;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    -o-border-radius: 4px;
}

.button-panel {
    padding-top: 20px;
}

.button-panel-top {
    padding-bottom: 10px;
}

/******************************************************************************
*	DISABLED CONTROL STYLES
*   The idea here is to make these controls render similar to labels
******************************************************************************/

input.disabled {
    border: none;
}

textarea.disabled, .disabled.BigTextArea /* Keep for site file compatibility */ {
    border: none;
    width: 80%;
    height: auto;
    overflow: auto;
}

/************************************************************************************************
*   Headers
************************************************************************************************/

h1, h2, h3, h4, .header-4, .header2 /* Keep for site file compatibility */ {
    font-weight: bold;
    text-align: left;
}

h1, h2, .header2 /* Keep for site file compatibility */ {
    font-family: Arial, sans-serif;
    letter-spacing: 1px;
    padding: 15px 5px 5px 0px;
    color: inherit;
    margin: 10px 0px 0px 0px;
}

h1 {
    font-size: 1.4em;
    display: inline-block;
}

h2, .header2 /* Keep for site file compatibility */ {
    font-size: 1.1em;
    border-bottom: 1px dotted #CCC;
}

h3 {
    font-size: 1.0em;
    padding: 5px 2px 2px 2px;
}

h4, .header-4 /* header-4 exists as it makes dynamic controls much easier to work with and is commonly used */ {
    font-size: 1em;
    display: inline-block;
    margin: 0;
    padding: 0;
    -webkit-margin-before: 0px;
    -webkit-margin-after: 0px;
}

/******************************************************************************
*	MESSAGE STYLES
******************************************************************************/

.ErrorMessage /* Keep for site file compatibility */ {
    color: Red;
}

.success-message {
    color: Green;
}

.ui-state-warning {
    border: 1px solid #FCEFA1;
    background: #FBF9EE;
}

    .ui-state-warning span.paragraph {
        display: block;
    }
/******************************************************************************
*	Profile Menu
******************************************************************************/

#profilemenu {
    height: 65px;
    width: 100%;
    background: #0D4770;
    position: relative;
}

.profile-menu-container {
    position: relative;
}

    .profile-menu-container a {
        color: #FFF;
    }

    .profile-menu-container ul {
        list-style: none;
        position: relative;
        margin: 0;
        padding: 0;
        line-height: 32px;
    }

    .profile-menu-container li {
        display: block;
        padding: 0 5px 0 5px;
    }

li.profile-menu-setting-item {
    border-top: 1px dotted #333333;
}

    li.profile-menu-setting-item ~ li.profile-menu-setting-item {
        border-top: none;
    }

.profile-menu-container li.log-off-link {
    border-top: 1px dotted #333333;
}

.profile-menu-container li.menu-new-group {
    border-top: 1px dotted #333333;
}

.profile-menu-container li:first-child {
    border-top: none;
}

ul#profile_dropdown {
    background: white;
    border: 1px solid #333;
    color: Black;
    position: absolute;
    z-index: 2000;
    text-align: left;
    right: 5px;
    top: 26px;
    -moz-box-shadow: 3px 3px 5px rgba(0,0,0,0.5);
    -webkit-box-shadow: 3px 3px 5px rgba(0,0,0,0.5);
    box-shadow: 3px 3px 5px rgba(0,0,0,0.5);
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
    min-width: 135px;
}

ul.profile-static {
    position: absolute;
    text-align: right;
    right: 0px;
    top: 26px;
}

#profile_dropdown a {
    color: #333;
    padding-left: 5px;
    display: inline-block;
}

.message-indicator {
    background-color: Red;
    color: White;
    font-weight: bold;
    line-height: 1.2em;
    padding: 1px 4px 1px 4px;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
    text-decoration: none;
    min-width: 1em;
    text-align: center;
    display: inline-block;
}

/* This is in essence our "base" icon class because its the one that the custom themes override the background-image on.  */
.icon-drop {
    background-image: url(../images/icons-white.png);
    background-position: -64px -16px;
    height: 16px;
    width: 16px;
    display: inline-block;
    top: 3px;
    position: relative;
}

.icon-tick {
    background-image: url(../images/icons-blue.png);
    background-position: -64px -144px;
}

.icon-edit-portal {
    background-position: -176px -112px;
}

/******************************************************************************
*	MODULE MENU STYLES (THE TOP MENU)
******************************************************************************/

#module_menu_container {
    margin-top: 0px;
}

#modulemenu {
    background-color: #3C78B5;
    line-height: 25px;
    position: relative;
    display: block;
    font-size: 12px;
    margin-bottom: 15px;
    border: 1px solid #E9F0F5;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
}

    #modulemenu ul {
        margin-top: 0;
        padding: 0;
    }

        #modulemenu ul.indent {
            margin-left: 10px;
        }

    #modulemenu li {
        display: inline;
        padding: 0;
    }

    #modulemenu a, #modulemenu input.button-as-link {
        color: #FFF;
        float: left;
        margin-right: 0px;
        padding-left: 10px;
        padding-right: 10px;
    }

/******************************************************************************
*	SECTION MENU
******************************************************************************/

a.aspNetDisabled .progress-header span {
    color: black;
}

.status-cancel-menu {
    padding: 3px 1em 3px 3px;
    display: inline-block;
    float: right;
}

#section_menu_container .header-sub /* the menu sub title */ {
    padding: 3px 3px 3px 1em;
    color: gray;
    background: transparent;
    display: inline-block;
    float: left;
}

.progress-bar {
    width: 100%;
    position: relative;
    overflow: auto;
    white-space: nowrap;
    display: inline-block;
    float: left;
    background-color: #e9f0f5;
    padding-top: 5px;
    padding-bottom: 5px;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
    font-size: 8pt;
}

.progress-bar-mask {
    float: left;
    text-align: center;
}

    .progress-bar-mask > a {
        display: inline;
    }

.progress-bar-left {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 20%;
    text-align: left;
    margin: 0;
    padding: 0; /*To adjust fade colour, change the rgba() values to the red, green, blue, alpha required, and change 'white' to the desired colour (can also use rgba())*/ /* IE 10 */ /* IE 10 */
    display: none;
    background-image: linear-gradient(right, rgba(234,240,245,0), white); /* Proposed standard - forward compatible */
}

.progress-bar-right {
    text-align: right;
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: 20%;
    margin: 0;
    padding: 0; /*To adjust fade colour, change the rgba() values to the red, green, blue, alpha required, and change 'white' to the desired colour (can also use rgba())*/ /* IE 10 */
    display: none;
    background-image: linear-gradient(left, rgba(234,240,245,0), white); /* Proposed standard - forward compatible */
}

.progress-arrow-left {
    border-color: transparent gray transparent transparent;
    border-style: solid;
    border-width: 10px;
    width: 0;
    height: 0;
    position: relative;
    display: none;
    top: 50%;
    margin-top: -10px;
    float: left;
    display: inline-block;
}

.progress-arrow-right {
    border-color: transparent transparent transparent gray;
    border-style: solid;
    border-width: 10px;
    width: 0;
    height: 0;
    position: relative;
    display: none;
    top: 50%;
    margin-top: -10px;
    float: right;
    display: inline-block;
}

.progress-active-arrow {
    border-color: transparent transparent #1C689F transparent;
    border-style: solid;
    border-width: 8px;
    width: 0;
    height: 0;
    position: relative;
    left: 50%;
    margin-left: -8px;
}

.progress-section-container {
    display: inline-block;
    border: 0;
    text-align: center;
    float: left;
    position: relative;
    min-width: 76px;
    padding-top: 2px;
}

    .progress-section-container:hover,
    .progress-bar a:focus .progress-section-container {
        background-color: #dae4f0;
    }

.progress-section-item {
    width: 100%;
    height: 2em;
    font-weight: bold;
    margin-top: 2px;
}

    .progress-section-item div {
        display: inline-block;
        width: 2em;
        height: 2em;
        line-height: 2em;
        -webkit-border-radius: 2em;
        -moz-border-radius: 2em;
        -o-border-radius: 2em;
        border-radius: 2em;
        float: left;
    }

.progress-current {
    border: 1px solid #1C689F;
    background-color: #E9970F;
    color: Black;
}

.progress-open {
    border: 1px solid #1C689F;
}

.progress-closed {
    border: 1px solid #999999;
    background-color: #999999;
    color: #dddddd;
}

.progress-upcoming {
    border: 1px solid #dddddd;
    background-color: #dddddd;
    color: #999999;
}

.progress-complete {
    border: 1px solid #1C689F;
    background-color: #1C689F;
    color: #e9f0f5;
}

    .progress-complete a {
        color: #e9f0f5;
    }

.progress-line {
    float: left;
    position: relative;
    margin-top: 1em;
    color: #1C689F;
    background-color: #1C689F;
    border: 1px solid #1C689F;
    width: 24px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

.progress-header {
    width: 76px;
}

/******************************************************************************
*	Section Sub Menu Styles
******************************************************************************/

.section-sub-menu-item {
    height: 28px;
    line-height: 26px;
    height: 26px;
    display: inline-block;
}

.section-sub-menu-divider {
    height: 26px;
    line-height: 26px;
    padding-left: 5px;
    padding-right: 5px;
}

.section-sub-menu-item-active, .wizard-item-selected {
    font-weight: bold;
    padding: 3px 3px 3px 3px;
    background: #1C689F;
    border-top-left-radius: 8px;
    -moz-border-top-left-radius: 8px;
    -webkit-border-top-left-radius: 8px;
    -o-border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    -moz-border-top-right-radius: 8px;
    -webkit-border-top-right-radius: 8px;
    -o-border-top-right-radius: 8px;
    height: 20px;
    line-height: 20px;
    display: inline-block;
    color: White;
}

    .section-sub-menu-item-active a {
        color: White;
    }

/******************************************************************************
*   Sign in control
*******************************************************************************/

.signin-container {
    width: 400px;
    margin: auto;
}

.signin-box-container {
    width: 100%;
}

    .signin-box-container input[type="submit"],
    .signin-box-container input[type="text"],
    .signin-box-container input[type="password"] {
        width: 95%;
    }

    .signin-box-container h2 {
        margin-top: 0px;
    }

/******************************************************************************
*  Update Password
*******************************************************************************/

.updatepassword-container {
    width: 95%;
    margin: auto;
}

.updatepassword-box-container {
    width: 45%;
    margin: auto;
}

    .updatepassword-box-container input[type="text"],
    .updatepassword-box-container input[type="password"] {
        width: 95%;
    }

    .updatepassword-box-container h2 {
        margin-top: 0px;
    }

/******************************************************************************
*	login control
******************************************************************************/

#login-box-outer-container {
    margin-top: 20px;
}

.login-box label {
    color: gray;
}

.login-box label, .login-box span {
    line-height: 24px;
}

.login-box .label-container {
    float: left;
    margin-right: 1em;
    margin-left: 1em;
}

.login-box .input-container {
    float: left;
}

.login-box input[type="checkbox"] {
    margin-top: 0.5em;
    margin-left: 0;
    float: left;
}

.login-box input[type="text"], .login-box input[type="password"], .login-box input[type="submit"] {
    width: auto;
}

.login-box input[type="submit"] {
    line-height: 15px;
}

.login-box img.loading-gif {
    margin-left: 1em;
    height: 24px;
    vertical-align: top;
}

.login-box .small-text {
    display: block;
    margin-top: 0.5em;
}

.info-container {
    display: inline;
    float: left;
    margin-top: 5px;
    margin-right: 3px;
}

/******************************************************************************
*	PROFILE MATCH STYLES
******************************************************************************/

#profilebox {
    padding: 5px 5px 5px 5px;
    margin-top: 5px;
    border: solid 1px #BEBEBE;
    font-size: small;
    font-weight: normal;
    text-align: left;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
}

    #profilebox #profilebox-header {
        width: 100%;
        height: 1.3em;
        position: relative;
    }

    #profilebox p {
        margin: 0 0 3px 0;
    }

#profilebox-header #matchgraph {
    border: solid 1px #d9d9d9;
    width: 160px;
    position: absolute;
    right: 5px;
    top: 0px;
    background-color: #FFFFFF;
}

#profilebox-header #matchgraph-bar {
    position: absolute;
    left: 0;
    top: 0;
    background-color: #50B650;
}

#profilebox-header #matchgraph-text {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
}

.suggested-roommates-container #profilebox {
    background-color: #E9F0F5;
}

/* ROOMMATE SURVEY AGREEMENT */

span.roommate-survey-group-heading {
	display: block;
	padding: 5px 10px;
	background: #eee;
	margin: 30px 0 20px 0;
	border-bottom: 2px solid #ccc;
}
span.roommate-survey-group-no-heading {
	display: block;
	margin: 30px 0 20px 0;
}

div.roommate-survey-question-answer {
	margin: 10px 0;
}

div.roommate-survey-answer {
	margin-top: 5px;
}

div.roommate-survey-multi-checkbox-item {
	margin: 10px 0;
}
div.roommate-survey-multi-checkbox-item:first-child {
	margin-top: 0;
}

/* ROOMMATE PROFILES OVERVIEW */

span.overview-profile-match-heading {
    display: inline-block;
    position: relative;
    padding: 0 10px;
    line-height: 30px;
    height: 30px;
    color: white;
    margin-top: 20px;
    float: left;
}

span.overview-profile-match-wedge {
    display: inline-block;
    position: relative;
    width: 0;
    height: 0;
    border: 15px solid transparent;
    border-right-color: white;
    border-top-color: white;
    margin-top: 20px;
    float: left;
}

div.overview-profile-match-container {
    margin-top: 50px;
    border: 1px solid #eee;
}

div.overview-container {
    margin: 40px;
    margin-bottom: 60px;
}

span.overview-empty-group {
    display: block;
    margin-top: 20px;
    margin-bottom: 20px;
}

div.overview-profile-type-container {
    position: relative;
    display: block;
    background-color: white;
}

div.overview-profile-type-heading {
    padding: 10px;
    border-bottom: 1px solid #eee;
    cursor: pointer;
}

    div.overview-profile-type-heading:hover {
        background-color: #FBFBFB;
    }

    div.overview-profile-type-heading > span.bold {
        display: inline-block;
        font-size: 18px;
        font-weight: normal;
        margin: 0;
        margin-bottom: 6px;
    }

div.overview-profile-item-container {
    position: relative;
    display: none;
    margin: 0;
    border-top: 1px solid #eee;
    border-bottom: 2px solid #eee;
    background: #f5f5f5;
}

div.overview-profile-item-wrapper {
    padding-top: 0;
}

    div.overview-profile-item-wrapper:last-child {
        padding-bottom: 4px;
    }

div.overview-profile-item-container strong {
    display: block;
    padding-top: 10px;
}

p.overview-your-answer {
    margin: 4px 0 0 20px;
}

table.overview-profile-item-match-row {
    position: relative;
    width: 100%;
    padding: 10px 0;
}

    table.overview-profile-item-match-row:nth-child(odd) {
        background-color: #EDEDED;
    }

div.overview-profile-item-match-container {
    position: relative;
    height: 4px;
    background: white;
}

span.overview-profile-items-toggle {
    display: inline-block;
    position: absolute;
    top: 10px;
    right: 10px;
    text-align: center;
    outline: 0;
    cursor: pointer;
}

td.profile-item-slider-cell {
    position: relative;
    padding-right: 20px;
}

div.profile-item-slider {
    margin-top: 10px;
    opacity: 1;
}

span.profile-item-low-desc {
    display: inline-block;
    width: 19%;
    word-wrap: break-word;
}

/******************************************************************************
*	Table Styles
******************************************************************************/

.block-table, .payment-table {
    border: 1px solid #bebebe;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
    margin: 0;
    padding: 0;
    border-spacing: 0;
    border-collapse: separate;
    width: 100%;
}

    .block-table th, .block-table td, .payment-table th, .payment-table td {
        font-weight: normal;
        padding: 7px 5px 7px 5px;
    }

.block-header-row {
    background-color: #1C689F;
    color: White;
}

    .block-header-row a {
        color: White;
    }

    .block-header-row th:first-child, .block-header-row td:first-child {
        -moz-border-top-left-radius: 4px;
        -webkit-border-top-left-radius: 4px;
        -o-border-top-left-radius: 4px;
        border-top-left-radius: 4px;
    }

    .block-header-row th:last-child, .block-header-row td:last-child {
        -moz-border-top-right-radius: 4px;
        -webkit-border-top-right-radius: 4px;
        -o-border-top-right-radius: 4px;
        border-top-right-radius: 4px;
    }

th {
    text-align: left;
}

    th .button-panel input[type='submit'], th select, th input[type='text'] {
        width: 100%;
        margin-bottom: 2px;
    }

    th span input[type='text'] {
        width: 65%;
    }

    th input.date-picker[type='text'] {
        width: 70%;
    }

    th img.ui-datepicker-trigger /* jQuery ui class */ {
        margin-left: 3px;
    }

/* jQuery tableSorter addin sort indicators */
.block-table tr .headerSortDown {
    background-image: url(../images/dn-white.gif);
    background-repeat: no-repeat;
    background-position: right center;
}

.block-table tr .headerSortUp {
    background-image: url(../images/up-white.gif);
    background-repeat: no-repeat;
    background-position: right center;
}

.block-table th label {
    margin-bottom: 5px;
}

table.block-table tr:not(.block-footer-row) th:not(:last-child), table.block-table tr:not(.block-footer-row) td:not(:last-child) {
    border-right: 1px solid #bebebe;
}

.block-table tr:not(.block-header-row):not(.block-footer-row), .block-header-row input, .block-header-row select, .payment-table tr.block-data-row {
    font-size: 8pt;
}

table.block-table .block-data-row:nth-child(odd), table.block-table .row-detail:nth-child(odd) {
    background-color: #e9f0f5;
}

table.block-table.selectable .block-data-row:hover {
    background-color: #DAE4F0;
    cursor: pointer;
}

table.block-table.selectable .block-data-row.row-selected {
    background-color: #E9970F;
}

.block-sub-heading-row td, .payment-table .block-footer-row td {
    font-weight: bold;
}

.block-sub-total-row td {
    border-top: solid 1px #BEBEBE;
    border-bottom: solid 1px #BEBEBE;
}

table.block-table tr.block-data-row td input[type!='CheckBox'], table.block-table tr.block-data-row td select, table.block-table tr.block-footer-row td input {
    width: 80%;
}

table.block-table tr.block-header-row th input[type='CheckBox'], table.block-table tr.block-data-row td input[type='CheckBox'],
.block-table tr.row-detail td input[type='CheckBox'] {
    margin: 3px 0px 0px 0px;
    text-align: center;
    width: 100%;
}

.block-footer-row td, .block-table tr.pager td {
    border-top: 1px solid #bebebe;
}

    .block-table tr.pager td table tr td {
        border-top: 0px;
    }

table.block-table tbody tr:last-child th:first-child, table.block-table tbody tr:last-child td:first-child {
    -moz-border-bottom-left-radius: 4px;
    -webkit-border-bottom-left-radius: 4px;
    -o-border-bottom-left-radius: 4px;
    border-bottom-left-radius: 4px;
}

table.block-table tbody tr:last-child th:last-child, table.block-table tbody tr:last-child td:last-child {
    -moz-border-bottom-right-radius: 4px;
    -webkit-border-bottom-right-radius: 4px;
    -o-border-bottom-right-radius: 4px;
    border-bottom-right-radius: 4px;
}

table.block-table .button-panel {
    padding-top: 0px;
    max-width: 120px;
}

.block-table .button-panel input[type='submit'] {
    min-width: 50px;
}

.block-table tr.block-data-row td textarea.big-text-area {
    width: 100%;
}

.block-table tr.total-row td {
    font-weight: bold;
    font-size: 8pt;
}

    .block-table tr.total-row td:not(:last-child) {
        border-right: 1px solid #bebebe;
    }

.row-highlighted, .payment-table tr.block-data-row:hover, .payment-table tr.block-sub-total-row:hover {
    background-color: #DAE4F0;
}

.row-selected {
    background-color: #E9970F;
    color: black;
}

div.row-header /* Replicate table style on complex div elements */ {
    border-bottom: solid 1px #BEBEBE;
    color: White;
    background-color: #1C689F;
    padding: 5px;
    -moz-border-top-left-radius: 4px;
    -webkit-border-top-left-radius: 4px;
    -o-border-top-left-radius: 4px;
    -ms-border-top-left-radius: 4px;
    border-top-left-radius: 4px;
    -moz-border-top-right-radius: 4px;
    -webkit-border-top-right-radius: 4px;
    -o-border-top-right-radius: 4px;
    -ms-border-top-right-radius: 4px;
    border-top-right-radius: 4px;
}

/******************************************************************************
*	Room Swap Offer Table fixed widths
******************************************************************************/

.room-swap-offer-table tr:first-child th:first-child {
    width: 255px;
}

.room-swap-offer-table tr:first-child th:nth-child(2) {
    width: 255px;
}

.room-swap-offer-table tr:first-child th:nth-child(3) {
    width: 115px;
}

.room-swap-offer-table tr:first-child th:nth-child(4) {
    width: 95px;
}

.room-swap-offer-table tr:first-child th:last-child {
    width: 190px;
}

.room-swap-number-guest-dropdown {
    width: 10%;
}

/******************************************************************************
*	Directory table fixed widths
******************************************************************************/

.directory-table {
    table-layout: fixed;
}

    .directory-table th {
        overflow: hidden;
        white-space: nowrap;
    }

    .directory-table td {
        overflow: hidden;
        word-wrap: break-word;
    }

    .directory-table tr th:first-child, .directory-table tr td:first-child {
        width: 16px;
    }

    .directory-table tr th:nth-child(2), .directory-table tr td:nth-child(2), .directory-table tr th:nth-child(3), .directory-table tr td:nth-child(3) {
        width: 125px;
    }

    .directory-table tr th:nth-child(4), .directory-table tr td:nth-child(4) {
        width: 75px;
    }

    .directory-table tr th:nth-child(5), .directory-table tr td:nth-child(5), .directory-table tr th:nth-child(6), .directory-table tr td:nth-child(6), .directory-table tr th:nth-child(7), .directory-table tr td:nth-child(7), .directory-table tr th:nth-child(8), .directory-table tr td:nth-child(8) {
        width: 100px;
    }

    .directory-table tr th:last-child, .directory-table tr td:last-child {
        width: 70px;
    }

    .directory-table tr.pager table td {
        width: auto;
    }

/******************************************************************************
*	Timer Styles
******************************************************************************/

.timer-normal {
    color: Green;
}

.timer-medium {
    color: Orange;
}

.timer-low {
    color: Red;
}

.timer-very-low {
    color: Red;
    font-weight: bold;
}

.timer-warning {
    background-color: #f6f6f6;
    border: 1px solid #ddd;
    display: none;
    border-radius: 5px;
    position: absolute;
    z-index: 100;
    box-shadow: 3px 3px 5px rgba(0,0,0,0.5);
    transition: transform linear 0.25s;
    transform: scale(1);
}

.timer-warning:hover, .timer-warning.hover {
    transform: scale(1.1);
}

.timer-warning:before {
    content: '';
    position: absolute;
    top: -6px;
    width: 0;
    height: 0;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-bottom: 6px solid #ddd;
}

.timer-warning-close {
    text-align: right;
}

.assign-bed-timer-warning {
    top: 20px;
    left: 20px;
    padding: 5px 10px;
}

.assign-bed-timer-warning:before {
    left: 230px;
}

.cart-timer-warning {
    top: 70px;
    right: 0px;
    padding: 10px;
    width: 220px;
}

.cart-timer-warning:before {
    left: 146px;
}

/**********************************************************************
*   jQuery UI (Dialogs, Sliders, DatePickers, Accordions)
**********************************************************************/

.dialog, .slider {
    display: none;
    outline: 0;
}

    .dialog p {
        margin: 1em 1em 1em 1em;
    }

div.no-close {
    min-width: 500px;
}

.slider-container span[slidervalue] {
    padding-bottom: 4px;
}

.slider {
    margin-top: 4px;
}

    .slider:not(.ui-disabled), .slider:not(.ui-disabled) a.ui-slider-handle {
        cursor: pointer;
    }

.tick {
    display: inline;
    position: absolute;
    border-left: 1px solid #0D4770;
    height: 100%;
    float: left;
}

input.date-picker[type="text"], input.date-range-picker[type="text"] {
    width: 120px;
    max-width: none;
}

input.date-time-picker[type="text"] {
    width: 180px;
    max-width: none;
}

/***********************************************************************
*   jQuery UI dialog overrides
***********************************************************************/
.ui-dialog {
    z-index: 2999 !important;
    background: white;
}

div.no-close .ui-dialog-titlebar-close {
    display: none;
}

.ui-widget-overlay {
    z-index: 2998 !important;
}

/***********************************************************************
*   jQuery UI slider overrides
***********************************************************************/

.ui-state-default, .ui-slider .ui-widget-content, .ui-slider .ui-slider-handle {
    outline: none;
}

.ui-widget-content:not(.ui-disabled) .ui-slider-handle.ui-state-default {
    border: 1px solid #0d4770;
    background: #0d4770 url(images/ui-bg_highlight-soft_100_0d4770_1x100.png) 50% 50% repeat-x;
    font-weight: bold;
    color: #ffffff;
}

.ui-widget-content:not(.ui-disabled) .ui-slider-handle.ui-state-hover, .ui-widget-content:not(.ui-disabled) .ui-slider-handle.ui-state-focus {
    border: 1px solid #0d4770;
    background: #dae4f0 url(images/ui-bg_flat_100_dae4f0_40x100.png) 50% 50% repeat-x;
    font-weight: bold;
    color: #0d4770;
}

.ui-widget-content:not(.ui-disabled) .ui-slider-handle.ui-state-active {
    border: 1px solid #0d4770;
    background: #ffffff url(images/ui-bg_flat_100_ffffff_40x100.png) 50% 50% repeat-x;
    font-weight: bold;
    color: #0d4770;
}

/***********************************************************************
*   jQuery UI datepicker overrides
***********************************************************************/

.ui-datepicker, .ui-timepicker {
    height: 256px;
    z-index: 2006 !important; /* Requires important as jQuery sets the z-index on the element, this is to sit above the editor overlays */
}

.ui-datepicker-calendar {
    height: 170px;
}

.ui-datepicker th {
    height: 23px;
    padding: 0 !important;
}

img.ui-datepicker-trigger {
    width: 16px;
    height: 16px;
    border: 0;
    margin-left: 5px;
    vertical-align: text-bottom;
}

.ui-datepicker-buttonpane.ui-widget-content .ui-priority-secondary {
    opacity: 1;
    filter: none;
    font-weight: bold;
}

/***********************************************************************
*   jQuery UI accordion overrides
***********************************************************************/

.ui-accordion-content.ui-widget-content {
    background: white;
}

.ui-accordion h3.ui-accordion-header a {
    padding: .5em .5em .5em 2em;
}

/***********************************************************************
*  Room Search Wizard styles
***********************************************************************/

#AvailableRoomsList {
    width: 260px;
    border: 1px solid #bebebe;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
}

    #AvailableRoomsList .expandable-container span {
        width: 200px;
        display: inline-block;
        padding: 2px 5px;
        cursor: pointer;
        border: 1px solid #bebebe;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        -ms-border-radius: 4px;
        -o-border-radius: 4px;
        border-radius: 4px;
    }

.suite-container, .room-container {
    padding: 4px 0px 4px 4px;
}
/***********************************************************************
*  Loading overlay styles
***********************************************************************/

div.transparent-overlay {
    position: fixed;
    z-index: 2010;
}

div.loading-message {
    z-index: 3000;
    position: fixed;
    width: 250px;
    border: solid 2px #1C689F;
}

/***********************************************************************
*  Offline page styles
***********************************************************************/

#error-page-container {
    text-align: center;
    min-height: 300px;
    padding-top: 50px;
    padding-bottom: 50px;
}

.offline-watermark {
    max-width: 300px;
    border: solid 10px #D2D8DC;
    font-size: 36px;
    font-family: Cooper Black, Arial Black, Sans-Serif;
    color: #D2D8DC;
    transform: rotate(-15deg);
    -ms-transform: rotate(-15deg); /* IE 9 */
    -webkit-transform: rotate(-15deg); /* Safari and Chrome */
    -o-transform: rotate(-15deg); /* Opera */
    -moz-transform: rotate(-15deg); /* Firefox */
    margin-left: auto;
    margin-right: auto;
    margin-top: 100px;
    paddding-top: 10px;
    paddding-bottom: 10px;
    border-radius: 10px;
    -ms-border-radius: 10px;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    -o-border-radius: 10px;
}

/* Shopping Cart styles */
#header-menu-contents {
    float: right;
    position: relative;
    z-index: 2000;
}

#shopping-cart-menu-container {
    text-align: right;
    padding-right: 10px;
}

.noscript-shopping-cart-container {
    width: 150px;
}

#cart-dropdown {
    background: white;
    border: 1px solid #333;
    color: Black;
    position: absolute;
    text-align: left;
    right: 5px;
    top: 65px;
    -moz-box-shadow: 3px 3px 5px rgba(0,0,0,0.5);
    -webkit-box-shadow: 3px 3px 5px rgba(0,0,0,0.5);
    box-shadow: 3px 3px 5px rgba(0,0,0,0.5);
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
    line-height: 20px;
    min-width: 220px;
    z-index: 1002;
}

    #cart-dropdown ul {
        list-style: none outside none;
        margin: 0;
        padding: 0;
    }

    #cart-dropdown li {
        padding: 5px;
        display: block;
    }

        #cart-dropdown li a {
            line-height: 30px;
        }

        #cart-dropdown li.cart-item, #cart-dropdown li.total-item {
            position: relative;
        }

            #cart-dropdown li.cart-item .item-detail {
                /*font-size: 0.8em;*/
                color: #666666;
                /*line-height: 15px;*/
                position: absolute;
            }

                #cart-dropdown li.cart-item .item-detail label {
                    display: inline-block;
                    float: left;
                    padding-left: 20px;
                    max-width: 40%;
                }

                #cart-dropdown li.cart-item .item-detail .amount, li.total-item .amount {
                    display: inline-block;
                    width: 100%;
                    text-align: right;
                    float: right;
                    font-weight: bold;
                }

    #cart-dropdown .no-cart-contents {
        margin-left: auto;
        margin-right: auto;
        width: 95%;
        text-align: center;
    }

.subtotal {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding-top: 5px;
    border-top: 1px dotted #000;
}

    .subtotal .label {
        display: inline-block;
        width: 50%;
        text-align: right;
        color: #000;
        font-weight: bold;
    }

#cart-dropdown .subtotal .amount {
    width: 47%;
    text-align: left;
    display: inline-block;
    margin: 0px;
}

.cart-item-description {
    width: 60%;
    display: inline-block;
}

#cart-dropdown .item-detail {
    width: 37%;
    height: 100%;
    display: inline-block;
}

#cart-dropdown .checkout {
    width: 100%;
}

.checkout-container {
    width: 50%;
    margin-right: auto;
    margin-left: auto;
}

.checkout-container-inline {
    display: inline-block;
}

#cart-dropdown .cart-heading {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

    #cart-dropdown .cart-heading .label {
        font-weight: bold;
    }

#cart-dropdown li.total-item {
    color: Red;
    clear: both;
}

.cart-image-container {
    height: 32px;
    width: 44px;
    display: inline-block;
    color: #E9970F;
    font-weight: bold;
    cursor: pointer;
}

    .cart-image-container span {
        position: relative;
        top: -32px;
    }

.cart-item-timer-container {
    background: none repeat scroll 0 0 #FFFFFF;
    border-radius: 4px 4px 4px 4px;
    box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.5);
    right: 60px;
    padding: 5px;
    position: absolute;
    top: 32px;
    width: 50px;
}

/* noscript shopping cart */
#shopping-cart-menu-container noscript {
    position: relative;
    top: -25px;
    right: 180px;
}

    #shopping-cart-menu-container noscript .action-container {
        line-height: 25px;
    }

    #shopping-cart-menu-container noscript a {
        color: white;
    }

.location-container {
    padding-right: 20px;
    margin-bottom: 20px;
}

    .location-container table {
        width: 100%;
        border-collapse: collapse;
    }

        .location-container table tr td {
            border-bottom: 1px solid #BEBEBE;
        }

        .location-container table tr:last-child td {
            border-bottom: none;
        }

        .location-container table tr td:last-child {
            text-align: right;
        }
}
/*
    Display a delimiter between each repeated generated block section.
    IE8 does not acknowledge the :not selector, so this is commented out and the sibling combinator used.

.generated-block-container:not(:first-child)
{
    border-top: 1px dashed #CCCCCC;
}
*/
div.generated-block-container ~ div.generated-block-container {
    border-top: 1px dashed #CCCCCC;
}

/* should-show is used to hide elements that require JavaScript to function, JS does the work of displaying it */
.should-show {
    display: none;
}

.button-as-link {
    background-color: transparent;
    border: none;
    cursor: pointer;
    padding: 0px;
    height: 25px;
    font-size: 1.1em;
}

/***********************************************************************
*  Agreements page styles
***********************************************************************/

.checkbox-control-container {
    display: inline;
    float: left;
}

.checkbox-text-container {
    width: 97%;
    display: inline;
    float: left;
}

/***********************************************************************
*  TimeSlot module styles
***********************************************************************/

#timeslots {
    margin-top: 18px;
}

    #timeslots div.fc-event.unbooked:not(.past):not(.restricted) {
        cursor: pointer;
    }

        #timeslots div.fc-event.unbooked:not(.past):not(.restricted):hover {
            border-color: black;
        }

.timeslot-actions-cell {
    width: 126px;
    text-align: center;
}

    .timeslot-actions-cell span.ui-icon {
        cursor: pointer;
        margin: 0 auto;
    }

.timeslot-current {
    margin-bottom: 20px;
}

    .timeslot-current table tr.block-data-row td {
        height: 27px;
    }

#timeslots div.booked:not(.current-entry), #timeslots div.past {
    color: #696969;
    background-color: white;
    border-color: #696969;
}

#timeslots div.booked, #timeslots div.current-entry {
    background-color: #3AAD79;
    border-color: #168251;
}

.fc-agenda-slots td div {
    height: 20px !important;
}

.fc-agenda-axis {
    height: 40px !important;
    line-height: 20px !important;
}

.fc-header-title h2 {
    border: 0;
    color: #696969;
    font-size: 12px;
}

.fc-widget-header {
    background-color: #EEE;
}

.ui-tooltip.ui-widget {
    -webkit-box-shadow: none;
    -ms-box-shadow: none;
    box-shadow: none;
    border-width: 1px;
    padding: 5px;
}

    .ui-tooltip.ui-widget .ui-tooltip-content {
        font-size: 11px;
    }

    .ui-tooltip.ui-widget.tooltip-error {
        border-color: maroon;
        color: maroon;
        background: #FFF5F5;
    }

.iframe-popup-container {
    display: none;
    background: white;
}