/*<editor-fold desc ="-- Typography --">*/
html {
    font-family: proxima-nova, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 11px;
}

/* Because of RecordVIEW's standard.css */
body,
table td,
select {
    font-family: inherit;
    font-size: inherit;
}

/* IE-only media query for IE "fixes".  */
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    /* IE requires !important for these for some reason.  */
    body,
    table td,
    select {
        font-family: inherit !important;
        font-size: inherit !important;
    }
}

h1,
.pageHeading {
    color: #333;
    font-size: 1.2rem;
    font-weight: bold;
    margin: 0.33rem 0;
    white-space: nowrap;
}

h2 {
    font-size: 1.2rem;
    font-weight: normal;
    margin: 0;
}

h3 {
    font-size: 1rem;
    font-weight: bold;
    margin: 0;
}

.panelBody h3 {
    margin: 0.55rem;
    display: block;
}
/*</editor-fold>*/

/*<editor-fold desc ="-- Layout --">*/
html,
body {
    margin: 0;
    padding: 0;
    height: 100%;
    width: 100%;
    min-width: 60rem;
    min-height: 20rem;
}

html {
    overflow: auto; /* Required so IE does not scroll horizontally when the corner menu is open. */
}

body {
    overflow: hidden; /* Required so IE does not scroll horizontally when the corner menu is open. */
}

.fl-row,
.fl-row-end,
.fl-row-center,
.fl-row-outer,
.fl-nav-row,
.fl-nav-row > li,      /* To correctly highlight and center fl-nav-row items, all elements down to and */
.fl-nav-row > li > a,  /* including the main <a> to be flex items. The <a> then needs to center its items. */
.fl-nav-row > li > span,
.fl-nav-row > li > span > a,
.fl-buttons,
.fl-buttons > * {
    display: flex;
    flex-direction: row;
}

.fl-col {
    display: flex;
    flex-direction: column;
}

.fl-row-end {
    justify-content: flex-end;
}

.fl-jc-center,
.fl-row-center {
    justify-content: center;
}

.fl-row-outer {
    justify-content: space-between;
}

.fl-fit,
.fl-fill,
.fl-buttons > * {
    flex: auto;
}

.fl-fill {
    flex-basis: 0; /* See https://stackoverflow.com/a/53604483 for why this is used over min-height. */
    min-width: 0;
    min-height: 0;
}

.fl-ai-start {
    align-items: flex-start;
}

.fl-ai-stretch {
    align-items: stretch;
}

.fl-ai-center,
.fl-nav-row > li > a,
.fl-nav-row > li > span > a {
    align-items: center;
}

.fl-buttons > * {
    flex-wrap: wrap;
}

.fl-buttons > * {
    margin: -0.2rem;
}

.fl-buttons > * > * {
    margin: 0.2rem;
}
/*</editor-fold>*/

/*<editor-fold desc ="-- Panels --">*/
.user-outer {
    padding: 6rem;
}

.panelSide,
.panelSideSmall {
    flex-shrink: 0;
}

.panelSide {
    width: 28rem;
}
.scroll {
    overflow: auto;
}

.pn-sp-full-p,
.panelSide,
.panelSideSmall {
    padding: 0.9rem;
}

.pn-sp-vert-p,
.pn-sp-child-vert-p > * {
    padding-left: 0.9rem;
    padding-right: 0.9rem;
}

.pn-sp-top-m,
.pn-sp-horiz-m,
.pn-sp-child-top-m > * + *,
.panelSide > * + * {
    margin-top: 0.9rem;
}

.pn-sp-bot-m,
.pn-sp-horiz-m {
    margin-bottom: 0.9rem;
}

.visible {
    visibility: visible;
}
.hidden {
    visibility: hidden;
}
.noDisplay {
    display: none;
}
/*</editor-fold>*/

/*<editor-fold desc ="-- Navigation Bar --">*/
.customBanner img,
.sw2-bannerImage img {
    display: block;
}

.sw2-page-header {
    font-size: 1.2rem;
    background: #386db4;
}

.sw2-sub-header {
    height: 22px;
    background: #eee;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}

.sw2-page-header-tabs {
    align-items: stretch;
}

.sw2-page-header-tabs > li {
    list-style-type: none;
    vertical-align: middle;
    box-sizing: border-box;
    line-height: normal; /* Argh Dojo!!! */
}

.sw2-bannerImage {
    margin: 0 3px;
}

.sw2-page-header-menu {
    cursor: pointer;
    color: #efefef !important; /* Damn you RecordView and your standard.css!!! */
    text-decoration: none;
    box-sizing: border-box;
    transition: all 0.1s ease-in;
}

.sw2-page-header-menu.header-tab {
    padding: 7px 14px 8px;
    font-size: 13px;
    margin: 0 2px;
}

.sw2-page-header-menu.header-button {
    padding: 7px 7px 8px;
}

/* Fix the 1px font top padding difference between Chrome (1px higher) and FF & IE */
/* Using "padding-top: 0.5px" shifts the text down in Chrome and IE but not FF */
/* Combining that with the webkit media selector below (Chrome and FF) ensures it only applies to Chrome */
@media screen and (-webkit-min-device-pixel-ratio: 0) {
    .sw2-page-header-menu {
    }
}

/* Yay... :\ */

.sw2-page-header-options .dropdown {
    line-height: normal;
    height: 100%;
    font-size: 0;
}

.sw2-page-header-search {
    padding: 3px 8px 4px;
}

.sw2-page-header-search form {
    height: 100%;
    font-size: 0;
}

.sw2-page-header-tabs > li:hover,
.sw2-page-header-tabs > li:focus,
.sw2-page-header-tabs > li:active {
    background: #4d83ca;
    color: #fff !important;
}

.dropdown.open .header-button,
.sw2-page-header-tabs .header-tab.selected {
    background: #1f3f6a !important;
    color: #efefef !important;
}

.sw2-page-header-tabs .disabled {
    color: #90afd7 !important; /* Damn you RecordView and your standard.css!!! */
    background: transparent;
    cursor: default;
}

input[type="text"].searchInput {
    width: 150px;
    padding: 2px 19px 2px 4px;
    vertical-align: middle;
    height: 24px;
}

.searchWrapper {
    position: relative;
    vertical-align: middle;
    display: inline-block;
}

.searchButton {
    position: absolute;
    top: 3px;
    right: 2px;
    background: transparent url("../images/material/ic_search_black.svg") no-repeat left top;
    width: 18px;
    height: 18px;
    cursor: pointer;
    border: 0;
    outline: 0;
    opacity: 0.75;
}

.searchButton:focus {
    outline: 2px solid #5b9dd9; /*  */
    /* -webkit-focus-ring-color = '#5B9DD9' */
    outline: -webkit-focus-ring-color auto 5px;
}

.menu-spacer {
    height: 100%;
    display: inline-block;
    vertical-align: middle;
}
/*</editor-fold>*/

/*<editor-fold desc ="-- Nav Bar --">*/
.sw2-navContainer {
    height: 40px;
    background: #386db4;
    border-top: 1px solid #ccc;
}

.sw2-navContainer .sw2-navItem {
    /*cursor: pointer;*/
    margin-right: 1px;
    height: 40px;
    vertical-align: middle;
    background: #406eac;
    box-sizing: border-box;
}

.sw2-navContainer .sw2-navSearchContainer {
    padding: 7px 12px;
}

.sw2-navContainer .sw2-navText {
    color: #fff;
    font-size: 13px;
    padding: 12px 20px;
    display: block;
    cursor: default;
}

.sw2-navContainer a.sw2-navText {
    text-decoration: none;
}

.sw2-navContainer .sw2-navItem.selected .sw2-navText {
    background: #2d4d78 !important;
}

.sw2-navContainer .sw2-navItem a.sw2-navText:hover {
    background: #5785c3;
    cursor: pointer;
}
/*</editor-fold>*/

/*<editor-fold desc ="-- Content Header --">*/
.sw2-contentHeaderContainer {
    background: #eee;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    box-sizing: border-box;
    padding: 0.3rem 0.9rem;
    min-height: 2.75rem;
}
/*</editor-fold>*/

/*<editor-fold desc ="-- Content Heading --">*/
#catalogueItemPageHeadings a.pageHeading,
#catalogueItemPageHeadings .pageHeading > a {
    color: #333;
    font-weight: normal;
    text-decoration: underline;
    text-decoration-color: #aaa;
}

.linkSeparator {
    opacity: 0.5;
}
/*</editor-fold>*/

/*<editor-fold desc ="-- Side Panel --">*/
.panelSide,
.panelSideSmall {
    background: #f7f7f7;
    border-right: 1px solid #ccc;
    box-sizing: border-box;
}

.panelBody {
    background: #fff;
    border: 1px solid #ccc;
    overflow: auto;
}
/*</editor-fold>*/

/*<editor-fold desc ="-- Footer --">*/
.sw2-footer {
    background: #386db4;
}

#footer ul,
#footer ul li,
#footer a p {
    font-size: 9px;
    vertical-align: middle;
}

#footer ul {
    list-style-type: none;
    margin-right: 4px;
    padding: 0;
    color: #fff;
}

#footer ul li {
    margin-left: 16px;
}

#footer ul li.powered-by-superstar {
    font-size: 0; /* To remove extra padding for whitespace and below elements */
    text-align: right;
    margin-left: 32px;
}

#footer a {
    text-decoration: none;
    color: rgba(255, 255, 255, 0.9);
}

#footer a:hover,
#footer a:focus {
    /* Uses color opacity to avoid Chrome text opacity rendering issue: https://stackoverflow.com/q/23126201 */
    color: rgba(255, 255, 255, 1);
}

#footer a img {
    min-height: 24px;
    margin-left: 4px;
    vertical-align: middle;
    opacity: 0.9;
}

#footer a:hover img,
#footer a:focus img {
    opacity: 1;
}

#relative-footer .footer-sub-credit,
#footer .footer-sub-credit {
    color: #ccc;
    margin-right: 20px;
}

#relative-footer .footer-sub-credit a,
#footer .footer-sub-credit a {
    color: #ccc;
    text-decoration: none;
}
/*</editor-fold>*/

/* Tooltips for inactive tab */
.inactiveTabTooltip {
    padding: 5px 10px;
    background: white;
    color: #444;
    border: 1px solid #aaa;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
    white-space: nowrap;
}

.inactiveTabTooltip .rf-tt-cntr {
    border: none;
    padding: 0;
}

.wrappingTextInactiveTabTooltip {
    padding: 5px 10px;
    background: white;
    color: #444;
    border: 1px solid #aaa;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
    white-space: normal;
    font-weight: bold;
}

.wrappingTextInactiveTabTooltip .rf-tt-cntr {
    border: none;
    padding: 0;
}

/* Password Visibility Button */
.visibilityButtonInputGroup {
    position: relative;
    display: inline-block;
}

.visibilityButtonInputGroup > input[type="password"],
.visibilityButtonInputGroup > input[type="text"],
.visibilityButtonInputGroup > input[type="email"] {
    position: relative;
    padding-right: 24px !important;
}

.visibilityButtonContainer {
    position: absolute;
    top: 0;
    right: 3px;
    bottom: 0;
}

.toggleVisibilityButton {
    display: inline-block;
    vertical-align: middle;
    background: transparent url("../images/material/ic_visibility_off_black.svg") no-repeat left top;
    width: 18px;
    height: 18px;
    cursor: pointer;
    border: 0;
    outline: 0;
    opacity: 0.5;
    transition: all 0.1s ease;
}

.toggleVisibilityButton:focus {
    outline: 2px solid #5b9dd9; /*  */
    /* -webkit-focus-ring-color = '#5B9DD9' */
    outline: -webkit-focus-ring-color auto 5px;
    opacity: 0.5 !important;
}

.toggleVisibilityButton--visible {
    background: transparent url("../images/material/ic_visibility_black.svg") no-repeat left top;
}

/* Password Visibility Button in User Registration */
.user-form-inputContainer .visibilityButtonContainer {
    bottom: 2px;
}

.user-form-inputContainer .loginPasswordInput:focus + .toggleVisibilityButton,
.user-form-inputContainer #userVerification-password:focus + .toggleVisibilityButton,
.user-form-inputContainer #resetPassword-password:focus + .toggleVisibilityButton {
    opacity: 0.5;
}
