﻿* :not(.foo) {
    font-size: 1em !important;
}

html, body {
    background-color: white;
}

html, body {
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    bottom: 0;
    overflow: hidden;
}

div.footerLeft {
    padding-top: 25px;
}

div.footer {
    clear: both;
    background-position: right;
    background-repeat: no-repeat;
    height: 60px;
}

div.footerPrint {
    text-align: center;
}

.footerPrintLeft {
    float: left;
    margin: 16px 0 0 10px;
}

.inputLabel {
    display: block;
    color: #cee1ff;
    font-weight: 600;
    letter-spacing: 0.01em;
    text-align: left;
    margin-bottom: 0.35em;
}

.footer, .footerLeft {
    font-size: 0.9em !important;
}

#divFooterLeft {
}

    #divFooterLeft a, .DEMONOTE a {
        text-decoration: none;
    }

        .DEMONOTE a, .DEMONOTE a:link, .DEMONOTE a:visited {
            background-color: #a90000;
            color: #FFFFFF !important;
            padding: 0 0.2em;
        }

        #divFooterLeft a:hover {
            color: #FFFFFF !important;
            text-decoration: none;
            cursor: pointer;
        }

        .DEMONOTE a:hover {
            background-color: #ca0000;
            color: #FFFFFF !important;
            text-decoration: none;
            cursor: pointer;
        }

#liForgotUNP {
    padding-top: 1.1em;
    text-align: center;
}

    #liForgotUNP a {
        text-decoration: none;
        color: #a9c3f2;
        font-style: normal;
        border-bottom: 1px dotted rgba(169, 195, 242, 0.55);
    }

        #liForgotUNP a:hover {
            color: #ffffff;
            text-decoration: none;
            cursor: pointer;
            font-style: normal;
            border-bottom-color: #ffffff;
        }

        #liForgotUNP a:focus-visible {
            outline: 2px solid rgba(255, 255, 255, 0.85);
            outline-offset: 3px;
            border-radius: 3px;
        }

.loginLogo {
    position: absolute;
    float: left;
    margin-top: -84px;
    margin-left: -68px;
    width: 175px;
    z-index: 9;
}

.loginPanelLogin {
    width: 100%;
    display: inline-block;
}

.TRFORM td {
    padding-top: 14px;
}

.TBLOGINUSERNAME, .TBLOGINPASSWORD, .TBVALIDATIONCODE {
    box-sizing: border-box;
    padding: 0.55em 0.75em !important;
    font-size: 1.1em !important;
    width: 100%;
    background-color: white;
    color: #0e1a3a;
    border: 1px solid rgba(255, 255, 255, 0.35) !important;
    -webkit-transition: border-color 0.15s, box-shadow 0.15s;
    transition: border-color 0.15s, box-shadow 0.15s;
}

/* (.roundBorder5 of the text boxes would make the corners 5px) */
.TBLOGINUSERNAME.roundBorder5, .TBLOGINPASSWORD.roundBorder5, .TBVALIDATIONCODE.roundBorder5 {
    -webkit-border-radius: 8px !important;
    -moz-border-radius: 8px !important;
    border-radius: 8px !important;
}

    .TBLOGINUSERNAME:focus, .TBLOGINPASSWORD:focus, .TBVALIDATIONCODE:focus {
        outline: none;
        border-color: #49a8ff !important;
        box-shadow: 0 0 0 3px rgba(73, 168, 255, 0.45);
        background-color: white;
    }

.TBLOGINUSERNAME {
    text-transform: lowercase;
}

.TBLOGINPASSWORD {
    letter-spacing: 0.1em;
}

.MFAHINTWRAP {
    color: #9bc8ff;
    line-height: 1.4em;
}

.MFAHINT {
    font-weight: bold;
    white-space: nowrap;
}

.MFA_IMG {
    height: 1.6em;
    margin-top: -0.4em;
    vertical-align: middle;
}

.MFALBL {
    font-weight: bold;
    color: #ffdc00;
}

/* Login: the primary button is full width; Cancel (second step, e.g. two-factor) is a quiet one below it */
.LOGINBTN, .STARTOVERBTN {
    box-sizing: border-box;
    width: 100%;
    padding: 0.7em 1.2em !important;
    margin: 0.2em 0 0 0;
    font-size: 1.05em !important;
    font-weight: 600;
    letter-spacing: 0.02em;
    cursor: pointer;
    -webkit-border-radius: 8px !important;
    -moz-border-radius: 8px !important;
    border-radius: 8px !important;
    -webkit-transition: background 0.15s, box-shadow 0.15s, border-color 0.15s;
    transition: background 0.15s, box-shadow 0.15s, border-color 0.15s;
}

.LOGINBTN {
    color: #ffffff;
    border: 1px solid #2368b8;
    background: -webkit-linear-gradient(top, #2d7fd0, #1a5aa8);
    background: linear-gradient(to bottom, #2d7fd0, #1a5aa8);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.15);
}

    .LOGINBTN:hover {
        background: -webkit-linear-gradient(top, #3a8ada, #2064b5);
        background: linear-gradient(to bottom, #3a8ada, #2064b5);
    }

    .LOGINBTN:active {
        background: #1a5aa8;
        box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.35);
    }

.STARTOVERBTN {
    margin-left: 0;
    margin-top: 0.6em;
    color: #cee1ff;
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.35);
}

    .STARTOVERBTN:hover {
        background: rgba(255, 255, 255, 0.1);
        border-color: rgba(255, 255, 255, 0.6);
    }

    .LOGINBTN:focus-visible, .STARTOVERBTN:focus-visible {
        outline: 3px solid rgba(255, 255, 255, 0.85);
        outline-offset: 2px;
    }

.LOGINERR {
    margin: 0.9em 0 0 0;
    -webkit-border-radius: 8px;
    border-radius: 8px;
}

    .LOGINERR:empty {
        display: none;
    }

.FORGOTUSERNAMEPASS {
    font-size: 0.9em !important;
}

/* [BEGIN] progress while the Data Model initializes (login.js: login_checkReady) */
#divLoading {
    padding: 0.2em 0.2em 0.5em 0.2em;
    -webkit-transition: opacity 0.35s ease, -webkit-transform 0.35s ease;
    transition: opacity 0.35s ease, transform 0.35s ease;
}

    #divLoading.LOADING-OUT {
        opacity: 0;
        -webkit-transform: translateY(-6px);
        transform: translateY(-6px);
    }

/* what is being loaded: top-right, two rows (the step, then rows done / total for the big tables); no background */
#divLoadingStep {
    min-height: 3em;
    margin-bottom: 0.5em;
    text-align: right;
    color: #a9c3f2;
    line-height: 1.5;
}

#divLoadingStepName, #divLoadingStepCount {
    min-height: 1.5em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

#divLoadingStepName {
    font-size: 1em !important;
    font-weight: normal;
}

#divLoadingStepCount {
    font-size: 0.92em !important;
    opacity: 0.85;
    font-variant-numeric: tabular-nums;
}

#divLoadingText {
    color: #e8f0ff !important;
    font-size: 1.1em !important;
    margin-top: 2.4em !important;
}

#lblReadyProgress {
    float: right;
    color: #e8f0ff;
    margin-left: 10px;
    font-size: 1em !important;
    font-variant-numeric: tabular-nums;
}

#divLoadingBar {
    height: 8px;
    margin: 0.5em 0 0.9em 0;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.16);
    -webkit-border-radius: 999px;
    border-radius: 999px;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.35);
}

#divLoadingFill {
    position: relative;
    width: 0;
    height: 100%;
    overflow: hidden;
    background: #49a8ff;
    background: -webkit-linear-gradient(left, #2f8cf0, #7fd0ff);
    background: linear-gradient(to right, #2f8cf0, #7fd0ff);
    -webkit-border-radius: 999px;
    border-radius: 999px;
}

    /* the light sheen running over the filled part */
    #divLoadingFill::after {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        left: -40%;
        width: 40%;
        background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.55), rgba(255, 255, 255, 0));
        background: linear-gradient(to right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.55), rgba(255, 255, 255, 0));
        -webkit-animation: LOGIN-SHEEN 1.4s ease-in-out infinite;
        animation: LOGIN-SHEEN 1.4s ease-in-out infinite;
    }

@-webkit-keyframes LOGIN-SHEEN {
    to { left: 110%; }
}

@keyframes LOGIN-SHEEN {
    to { left: 110%; }
}
/* [END] progress */

/* the login form fades in when it appears (after the initialization, or on the next step / error) */
#loginForm {
    -webkit-animation: LOGIN-FORM-IN 0.45s ease both;
    animation: LOGIN-FORM-IN 0.45s ease both;
}

@-webkit-keyframes LOGIN-FORM-IN {
    from { opacity: 0; -webkit-transform: translateY(8px); }
    to { opacity: 1; -webkit-transform: none; }
}

@keyframes LOGIN-FORM-IN {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: none; }
}

/* no motion for people (and devices) that ask for it */
@media (prefers-reduced-motion: reduce) {
    #divLoginPanel *, #divLoginPanel *::before, #divLoginPanel *::after {
        -webkit-animation: none !important;
        animation: none !important;
        -webkit-transition: none !important;
        transition: none !important;
    }
}

#divBody {
    display: table;
    table-layout: fixed;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    height: calc(100% - 60px);
    overflow: visible !important;
}

#divLeft {
    display: table-cell;
    height: 100% !important;
}

#divRight {
    display: table-cell;
    overflow: hidden;
    color: #EEEEFF;
    border-left: 0.1em solid #828995;
    width: 50%;
    height: 100% !important;
    vertical-align: top;
    padding: 0 !important;
    margin: 0 !important;
    background-color: #222;
    background-image: url(/common/_images/bg/bg188_BlackSeaPlatforms.jpg?x2026);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

#divLeftWrap {
    display: block;
    min-height: 100%;
    height: 100%;
    padding-bottom: 3em;
    overflow: hidden;
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#ddd));
    background: -ms-linear-gradient(top, #fff 0%, #ddd 100%);
    background: -moz-linear-gradient(top, #fff, #ddd);
    filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#fff', endColorstr='#ddd');
    background-repeat: no-repeat;
    background-size: cover;
    -moz-transition: all 1s;
    -webkit-transition: all 1s;
    -o-transition: all 1s;
    transition: all 1s;
}

    #divLeftWrap.X1 {
        background-image: url(/common/_images/x5.jpg);
    }

    #divLeftWrap.X2 {
        background-image: url(/common/_images/x52.jpg);
    }

    #divLeftWrap.X3 {
        background-image: url(/common/_images/x53.jpg);
    }

    #divLeftWrap.X4 {
        background-image: url(/common/_images/x54.jpg);
    }

@keyframes TICKERANIM {
    0% {
        -webkit-transform: translate3d(50%, 0, 0);
        transform: translate3d(50%, 0, 0);
        visibility: visible;
    }

    100% {
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
    }
}

.TICKERWRAP {
    position: absolute;
    float: left;
    bottom: 60px;
    height: 1.8em;
    background-color: #264477;
    color: #b6ccff;
    left: 0;
    z-index: 1000;
    width: 50%;
    overflow: hidden;
}

.TICKER {
    font-size: 1.4em !important;
    margin-top: 0.1em;
    display: inline-block;
    white-space: nowrap;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-name: TICKERANIM;
    animation-name: TICKERANIM;
    -webkit-animation-duration: 35s;
    animation-duration: 35s;
}

    .TICKER * {
        font-size: inherit !important;
    }

.MAINTENANCE {
    position: absolute;
    float: left;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
}

#divLoginPanel {
    display: block;
    position: relative;
    z-index: 2; /* above the canvas of the chat scenes of the login animations (loginanime-scenes.js), which come out from behind the panel */
    /* deep navy with a soft light from the top-left corner: a "glass" panel */
    background: #14295f;
    background: -webkit-radial-gradient(20% 0%, circle farthest-corner, rgba(110, 150, 225, 0.45), rgba(110, 150, 225, 0) 62%), -webkit-linear-gradient(top, #26418a 0%, #14295f 55%, #0a1a47 100%);
    background: radial-gradient(circle farthest-corner at 20% 0%, rgba(110, 150, 225, 0.45), rgba(110, 150, 225, 0) 62%), linear-gradient(to bottom, #26418a 0%, #14295f 55%, #0a1a47 100%);
    color: #cee1ff;
    margin: 0 auto;
    padding: 1.2em 1.4em 0.9em 1.4em;
    border: 1px solid rgba(255, 255, 255, 0.2);
    max-width: 380px;
    box-shadow: 0 14px 34px rgba(3, 10, 40, 0.45), inset 0 1px 0 rgba(255, 255, 255, 0.22);
    -webkit-border-radius: 12px !important;
    -moz-border-radius: 12px !important;
    border-radius: 12px !important;
}

#divFormWrap {
    display: block;
    overflow: hidden;
}

#divLeftCenter {
    padding: 90px 0 0 0;
    margin-top: 0;
    margin-bottom: 0;
    margin-left: auto;
    margin-right: auto;
    -moz-transition: all 0.5s;
    -webkit-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
}

@media only screen and (min-width: 1200px) {
    #divRight {
        width: 55%;
    }
}

@media only screen and (max-width: 840px) {
    html, body {
        overflow: auto !important;
    }

    #divBody {
    }

    #divLeft {
        width: 100%;
        height: 100%;
    }

    .TICKERWRAP {
        width: 100%;
    }

    #divRight {
        display: none;
    }

    .footer {
        position: fixed !important;
    }

    .LOGINPANELNOTES {
        padding: 1em 0.5em !important;
    }
}

@media only screen and (max-width: 480px) {
    #divLeftCenter {
        left: inherit;
        padding-top: 90px !important;
        max-width: 100%;
        margin-left: inherit;
    }

    #divFormWrap {
        border-left: 0;
        border-right: 0;
        border-radius: 0;
    }

    input[type="text"], input[type="password"] {
        font-size: 1em !important; /* no auto-zooming on iOS devices */
    }

    .loginLogo {
        margin-left: -36px;
    }

    #divLoginPanel {
        margin-left: 0.75em;
        margin-right: 0.75em;
    }
}

.loginIssuesHeader {
    font-weight: bold;
    font-size: 1.1em !important;
    padding-top: 0.2em;
    color: #447;
}

/* "Forgot User Name or Password" popup (opticSecurity_forgotUserNameOrPassword) */

.FORGOTUNP-POPUP {
    max-width: 92vw;
    box-sizing: border-box;
    animation: FORGOTUNP-popIn 0.18s ease-out;
}

@keyframes FORGOTUNP-popIn {
    from { opacity: 0; transform: scale(0.96) translateY(-0.4em); }
    to { opacity: 1; transform: scale(1) translateY(0); }
}

.FORGOTUNP-HEADER {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: linear-gradient(135deg, #0a56b1, #06387a);
    padding: 0.25em 0.3em 0.25em 0.7em;
    cursor: pointer;
}

.FORGOTUNP-TITLE {
    font-weight: bold;
    font-size: 1.05em !important;
    letter-spacing: 0.01em;
    color: #FFFFFF;
}

.FORGOTUNP-CLOSE {
    cursor: pointer;
    font-size: 1.5em !important;
    line-height: 1;
    color: rgba(255,255,255,0.75);
    padding: 0 0.3em;
    transition: color 0.15s, transform 0.15s;
}

    .FORGOTUNP-CLOSE:hover {
        color: #FFFFFF;
        transform: scale(1.15);
    }

.FORGOTUNP-BODY {
    padding: 1.1em 1.1em 0.9em 1.1em;
    background-color: #EAE7EF;
    line-height: 1.3em;
}

.FORGOTUNP-FORM, .FORGOTUNP-RESULT {
    transition: opacity 0.15s ease, transform 0.15s ease;
}

.FORGOTUNP-FADING {
    opacity: 0;
    transform: translateY(-0.3em);
}

.FORGOTUNP-LABEL {
    font-size: 0.92em !important;
    color: #334;
    margin-bottom: 0.4em;
}

.FORGOTUNP-INPUT {
    width: 100%;
    box-sizing: border-box;
    padding: 0.5em 0.6em;
    border: 1px solid #CCC;
    border-radius: 0.25em;
    font-size: 0.98em !important;
    font-family: inherit;
    transition: border-color 0.15s, box-shadow 0.15s;
}

    .FORGOTUNP-INPUT:focus {
        outline: none;
        border-color: #0a56b1;
        box-shadow: 0 0 0 0.2em rgba(10,86,177,0.15);
    }

    .FORGOTUNP-INPUT-ERR {
        border-color: #CA0040 !important;
        animation: FORGOTUNP-shake 0.35s;
    }

@keyframes FORGOTUNP-shake {
    20%, 60% { transform: translateX(-0.25em); }
    40%, 80% { transform: translateX(0.25em); }
}

.FORGOTUNP-ACTIONS {
    margin-top: 0.7em;
    text-align: right;
}

.FORGOTUNP-BTN {
    padding: 0.4em 1.3em;
    border-radius: 0.25em;
    border: none;
    font-size: 0.95em !important;
    font-weight: bold;
    cursor: pointer;
    transition: background-color 0.15s, transform 0.08s;
}

    .FORGOTUNP-BTN:active {
        transform: scale(0.96);
    }

.FORGOTUNP-BTN-PRIMARY {
    background-color: #0a56b1;
    color: #FFFFFF;
}

    .FORGOTUNP-BTN-PRIMARY:hover {
        background-color: #084890;
    }

.FORGOTUNP-BTN-SECONDARY {
    background-color: #DADEE6;
    color: #333;
}

    .FORGOTUNP-BTN-SECONDARY:hover {
        background-color: #CBD0D9;
    }

.FORGOTUNP-RESULT {
    font-size: 0.92em !important;
}

.FORGOTUNP-CHECKMARK {
    width: 1.1em;
    height: 1.1em;
    vertical-align: -0.2em;
}

    .FORGOTUNP-CHECKMARK circle {
        fill: none;
        stroke: #1C8A4C;
        stroke-width: 2.5;
        stroke-dasharray: 76;
        stroke-dashoffset: 76;
        animation: FORGOTUNP-circleDraw 0.35s ease-out forwards;
    }

    .FORGOTUNP-CHECKMARK path {
        fill: none;
        stroke: #1C8A4C;
        stroke-width: 3;
        stroke-linecap: round;
        stroke-linejoin: round;
        stroke-dasharray: 20;
        stroke-dashoffset: 20;
        animation: FORGOTUNP-checkDraw 0.2s 0.3s ease-out forwards;
    }

@keyframes FORGOTUNP-circleDraw {
    to { stroke-dashoffset: 0; }
}

@keyframes FORGOTUNP-checkDraw {
    to { stroke-dashoffset: 0; }
}

/* the "check your Junk/Spam folder" reminder shown after a successful send */
.FORGOTUNP-TIP {
    display: flex;
    align-items: flex-start;
    gap: 0.5em;
    background-color: #FFF8E1;
    border: 1px solid #F0DCA0;
    border-radius: 0.3em;
    padding: 0.5em 0.7em;
    margin-top: 0.9em;
    color: #7A5300;
    font-size: 0.85em !important;
    line-height: 1.3em;
    opacity: 0;
    animation: FORGOTUNP-tipIn 0.3s 0.45s ease-out forwards;
}

@keyframes FORGOTUNP-tipIn {
    from { opacity: 0; transform: translateY(-0.2em); }
    to { opacity: 1; transform: translateY(0); }
}

.FORGOTUNP-TIP-ICON {
    width: 1.3em;
    height: 1.3em;
    flex-shrink: 0;
    margin-top: 0.05em;
}

    .FORGOTUNP-TIP-ICON circle, .FORGOTUNP-TIP-ICON rect {
        fill: #D9A441;
    }

@media only screen and (min-height: 1200px) {
    #divLeftCenter {
        padding-top: 190px;
    }
}

@media only screen and (max-height: 1200px) {
    #divLeftCenter {
        padding-top: 190px;
    }
}

@media only screen and (max-height: 1000px) {
    #divLeftCenter {
        padding-top: 170px;
    }
}

@media only screen and (max-height: 900px) {
    #divLeftCenter {
        padding-top: 160px;
    }
}

@media only screen and (max-height: 736px) {
    #divLogoWrapper {
        height: 70px;
        margin-bottom: 10px;
    }

    #divLeftCenter {
        padding-top: 90px;
    }
}

@media only screen and (max-height: 670px) {
    #divLogoWrapper {
        height: 70px;
        margin-bottom: 10px;
    }

    #divLeftCenter {
        padding-top: 80px;
    }
}

@media only screen and (max-height: 610px) {
    #divLogoWrapper {
        height: 73px;
        margin-bottom: 0.1em;
    }

    #divLeftCenter {
        padding-top: 70px;
    }
}

.footerRight, .footerRightTOP {
    position: absolute;
    right: 7px;
    margin-top: 12px;
    cursor: pointer;
}

.footerRightTOP {
    animation-name: fade;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
    animation-duration: 2s;
    animation-direction: alternate;
}

@-webkit-keyframes fade {
    0% {
        filter: alpha(opacity=100);
        opacity: 1;
    }

    10% {
        filter: alpha(opacity=100);
        opacity: 1;
    }

    90% {
        filter: alpha(opacity=0);
        opacity: 0;
    }

    100% {
        filter: alpha(opacity=0);
        opacity: 0;
    }
}

@-moz-keyframes fade {
    0% {
        filter: alpha(opacity=100);
        opacity: 1;
    }

    25% {
        filter: alpha(opacity=100);
        opacity: 1;
    }

    75% {
        filter: alpha(opacity=0);
        opacity: 0;
    }

    100% {
        filter: alpha(opacity=0);
        opacity: 0;
    }
}

@keyframes fade {
    0% {
        filter: alpha(opacity=100);
        opacity: 1;
    }

    25% {
        filter: alpha(opacity=100);
        opacity: 1;
    }

    75% {
        filter: alpha(opacity=0);
        opacity: 0;
    }

    100% {
        filter: alpha(opacity=0);
        opacity: 0;
    }
}

.loginReleaseNotes {
    all: unset;
    display: block;
    width: 100%;
    vertical-align: top;
    line-height: 1.1em;
    color: #293e65;
}

    .loginReleaseNotes ul {
        margin: 0.5em 0;
    }

.loginReleaseNotesHeader {
    font-family: Tahoma,Arial;
    font-size: 1.3em !important;
    font-weight: normal !important;
    margin: 0.1em 0 0.8em 0;
}

.loginReleaseNotesHeader, .loginReleaseNotesSectionTitle {
    color: #e7f5ff;
}

.loginLeftSubHeader {
    font-style: italic;
}

.loginReleaseNotesSectionTitle {
    margin-top: 1.4em;
    padding-top: 0.4em;
    font-style: italic;
}

.latestImprovementsText {
    font-weight: normal !important;
    margin: 0 !important;
    padding-bottom: 0.15em;
    color: #c5caec;
    line-height: 1.2em;
}

    .latestImprovementsText i {
        color: #b2d0ff;
    }

.IMPORTANTPREVVERSIONITEM {
    background-color: #6d009e !important;
}

.latestImprovementsText a:not(.SCREENSHOTLINK) {
    background-color: #b9009c;
}

.latestImprovementsText a, .latestImprovementsText a:link, .latestImprovementsText a:visited, .latestImprovementsText a:hover {
    color: #fff !important;
    padding-left: 0.2em;
    padding-right: 0.2em;
}

.latestImprovementsText b:first-child, .latestImprovementsText .OTHERTITLE {
    color: #3ABEFF;
    font-weight: normal;
}

li {
    margin-top: 0.1em;
    margin-bottom: 0.1em;
}

.latestImprovementsSubitem {
    list-style-type: none;
}

.SCREENSHOTLINK img {
    margin: 0 0.2em 0 0em;
    height: 1.2em;
    border: 1px solid #8c9bab;
    vertical-align: middle;
}

.LOCATIONINFO {
    float: right;
    position: relative;
    margin-right: -16px;
    margin-top: -38px;
    color: #82a1d4;
}

.MAINVERSION, .VERSIONHIGHLIGHTS_MAIN, .VERSIONHIGHLIGHTS, .VERSIONHIGHLIGHTS_NEXTVERSION {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    padding-bottom: 1px;
    padding-right: 0.4em;
}

    .MAINVERSION ul, .VERSIONHIGHLIGHTS_MAIN ul, .VERSIONHIGHLIGHTS ul, .VERSIONHIGHLIGHTS_NEXTVERSION ul {
        padding-left: 2.3em !important;
    }

.MAINVERSION {
    color: #d3e4ff;
}

.VERSIONHIGHLIGHTS_MAIN b, .VERSIONHIGHLIGHTS b, .VERSIONHIGHLIGHTS_NEXTVERSION b,
.VERSIONHIGHLIGHTS_MAIN u, .VERSIONHIGHLIGHTS u, .VERSIONHIGHLIGHTS_NEXTVERSION u,
.VERSIONHIGHLIGHTS_MAIN i, .VERSIONHIGHLIGHTS i, .VERSIONHIGHLIGHTS_NEXTVERSION i,
.VERSIONHIGHLIGHTS_MAIN span, .VERSIONHIGHLIGHTS span, .VERSIONHIGHLIGHTS_NEXTVERSION span {
    font-size: inherit !important;
}

.VERSIONHIGHLIGHTS_MAIN {
    background-color: #dd7100;
    /*-webkit-animation: VHLTransition 5s ease infinite;
    -moz-animation: VHLTransition 5s ease infinite;
    animation: VHLTransition 5s ease infinite;*/
}

.VERSIONHIGHLIGHTS_NEXTVERSION {
    background-color: #0040b1;
}

.VERSIONHIGHLIGHTS {
    background-color: #003886;
}

@-webkit-keyframes VHLTransition {
    0% {
        background: #09185b;
    }

    50% {
        background: #1a3078;
    }

    100% {
        background: #09185b;
    }
}

@-moz-keyframes VHLTransition {
    0% {
        background: #09185b;
    }

    50% {
        background: #1a3078;
    }

    100% {
        background: #09185b;
    }
}

@keyframes VHLTransition { /*Chrome*/
    0% {
        background: #09185b;
    }

    50% {
        background: #1a3078;
    }

    100% {
        background: #09185b;
    }
}

.GREENLABEL {
    display: inline-block;
    padding: 0 0.3em 0 0.5em;
    background-color: #0765af;
    color: #a2e8ce;
    font-size: 0.9em !important;
    margin-right: 0.1em;
}


    .GREENLABEL .LED_BLINKGREEN {
        display: inline-block;
        width: 0.6em;
        height: 0.6em;
        margin-left: 0.4em;
    }

.imgshadingLOGIN {
    -moz-box-shadow: 3px 3px 7px #06154a;
    -webkit-box-shadow: 3px 3px 7px #06154a;
    box-shadow: 3px 3px 7px #06154a;
    -ms-filter: "progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color='#06154a')";
    filter: progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color='#06154a');
    margin-right: 4px;
}

.INPROGRESS {
    font-style: italic;
}

.WHITELLINK, .WHITELLINK:link, .WHITELLINK:visited, .WHITELLINK:hover {
    color: #fff !important;
    background-color: inherit !important;
    padding-left: 0.2em;
    padding-right: 0.2em;
}

.LOGINCOMPANYLOGO {
    float: right;
    margin-top: 0.2em;
    margin-right: 0.2em;
    padding: 0.1em 0.3em;
    text-align: right;
}

    .LOGINCOMPANYLOGO img {
        height: 3.2em;
        -webkit-border-radius: 0.3em;
        -moz-border-radius: 0.3em;
        border-radius: 0.3em;
        padding: 0.2em 0.5em !important;
    }

.TBLTOPLEFTMESSAGE {
    position: absolute;
    left: 0;
    top: 0;
    color: #5b6783;
    border-collapse: collapse;
}

    .TBLTOPLEFTMESSAGE td {
        vertical-align: middle;
        padding: 0.1em 0.3em;
        font-family: Georgia,Arial;
        font-size: 1em !important;
    }

    .TBLTOPLEFTMESSAGE img {
        height: 2.4em;
    }

.LOGINPANELIMGTOPRIGHT {
    position: absolute;
    margin-top: -1.3em;
    width: 80px;
    -webkit-border-radius: 0.3em;
    -moz-border-radius: 0.3em;
    border-radius: 0.3em;
}

.italicbg {
    background-color: #004e85;
    padding: 0 0.2em;
}

.LOGINPANELNOTES {
    position: absolute;
    bottom: 0;
    padding: 1em;
    overflow: auto;
}

.ADDONIMG {
    vertical-align: middle;
    padding: 0.4em;
    background-color: #3d569266;
    -webkit-border-radius: 0.3em;
    -moz-border-radius: 0.3em;
    border-radius: 0.3em;
}

.MOBILELINK {
    display: inline-block;
    white-space: nowrap;
}

    .MOBILELINK a {
        color: #fff !important;
        padding-left: 0.2em;
        padding-right: 0.2em;
        background-color: #005292 !important;
        margin-right: 0.2em;
    }

        .MOBILELINK a:hover {
            background-color: #006dc3 !important;
        }

.DEMONOTE {
    display: inline-block;
    color: #fff;
    background-color: #0062bfde;
    margin-top: 0.2em;
    margin-right: 0.4em;
    padding: 0.2em 0.5em;
    font-size: 0.85em !important;
    line-height: 1.3em;
    letter-spacing: 0.02em;
    -webkit-border-radius: 0.3em !important;
    -moz-border-radius: 0.3em !important;
    border-radius: 0.3em !important;
}

.DEPLOYMENTNOTE {
    background-color: #396bbf;
    color: white;
    padding: 0.2em;
    font-size: 0.9em !important;
    -webkit-animation: DEPLOYMENTNOTE_ANIM 1.5s infinite; /* Safari 4+ */
    -moz-animation: DEPLOYMENTNOTE_ANIM 1.5s infinite; /* Fx 5+ */
    -o-animation: DEPLOYMENTNOTE_ANIM 1.5s infinite; /* Opera 12+ */
    animation: DEPLOYMENTNOTE_ANIM 1.5s infinite; /* IE 10+, Fx 29+ */
}

@-webkit-keyframes DEPLOYMENTNOTE_ANIM {
    0%, 49% {
        background-color: #d00;
    }

    50%, 100% {
        background-color: #dd7100;
    }
}

@-moz-keyframes DEPLOYMENTNOTE_ANIM {
    0%, 49% {
        background-color: #d00;
    }

    50%, 100% {
        background-color: #dd7100;
    }
}

@-ms-keyframes DEPLOYMENTNOTE_ANIM {
    0%, 49% {
        background-color: #d00;
    }

    50%, 100% {
        background-color: #dd7100;
    }
}

@-o-keyframes DEPLOYMENTNOTE_ANIM {
    0%, 49% {
        background-color: #d00;
    }

    50%, 100% {
        background-color: #dd7100;
    }
}

@keyframes DEPLOYMENTNOTE_ANIM { /*Chrome*/
    0%, 49% {
        background-color: #d00;
    }

    50%, 100% {
        background-color: #dd7100;
    }
}

.TBLOPTICMOBILE img {
    -webkit-border-radius: 0.3em !important;
    -moz-border-radius: 0.3em !important;
    border-radius: 0.3em !important;
}

.DIVADDONS {
    margin-top: 1em;
    font-size: 0.9em !important;
}

    .DIVADDONS * {
        font-size: 1em !important;
    }

    .DIVADDONS b {
        color: #7294f3;
    }

.fieldSetLegend {
    font-size: 0.9em !important;
}


.NOTEWITHICON {
    margin-top: 1em;
    font-size: 0.9em !important;
}

    .NOTEWITHICON img {
        float: left;
        margin: 0 1em 0 0.2em;
        height: 2.5em;
    }

    .NOTEWITHICON * {
        font-size: inherit !important;
    }

.SOCIALMEDIAWRAP {
    float: right;
}

    .SOCIALMEDIAWRAP a {
        margin: 0 0.25em;
    }

    .SOCIALMEDIAWRAP img {
        display: inline-block;
        width: auto !important;
        height: 1.4em !important;
    }

.ACASE {
    display: none;
}

.TBLPROMO tr:first-child td {
    padding-top: 0.25em;
}

.SCROLLERPH {
    position: absolute;
    left: 16em;
    right: 178px;
    margin-top: 0.8em;
}

.VERSION {
    float: none;
    text-align: right;
    color: #8fa3d8;
    font-size: 0.82em !important;
    font-style: italic;
    clear: both;
    margin: 0.7em 0 0 0;
    -moz-transition: all 0.5s;
    -webkit-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
}

    .VERSION:hover {
        color: #b3c3e5;
    }

/* [BEGIN] subtle "shining" effects on the login panel (login.js: login_fxStart / login_fxNext; one at a time: .FX1 ... .FX10 on #divLoginFX / #divLoginGlow) */
#divLoginFX {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    overflow: hidden;
    pointer-events: none;
    -webkit-border-radius: 12px;
    border-radius: 12px;
}

    #divLoginFX > div {
        position: absolute;
        opacity: 0;
        pointer-events: none;
    }

/* the glow around the panel (outside the clipped area) */
#divLoginGlow {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    pointer-events: none;
    -webkit-border-radius: 12px;
    border-radius: 12px;
}

/* 3 - edge light run (a bright thread running along the top edge, and back along the bottom edge) */
#divLoginFX .fx-edge {
    top: 0;
    left: 0;
    width: 38%;
    height: 2px;
    background: linear-gradient(90deg, rgba(190, 225, 255, 0), rgba(190, 225, 255, 0.95), rgba(190, 225, 255, 0));
}

#divLoginFX .fx-edge.b {
    top: auto;
    bottom: 0;
}

#divLoginFX.FX3 .fx-edge {
    animation: LOGIN-FX-EDGE 3s linear both;
}

#divLoginFX.FX3 .fx-edge.b {
    animation-name: LOGIN-FX-EDGE-BACK;
}

@keyframes LOGIN-FX-EDGE {
    0% { opacity: 0; transform: translateX(-100%); }
    10% { opacity: 1; }
    90% { opacity: 1; }
    100% { opacity: 0; transform: translateX(270%); }
}

@keyframes LOGIN-FX-EDGE-BACK {
    0% { opacity: 0; transform: translateX(270%); }
    10% { opacity: 1; }
    90% { opacity: 1; }
    100% { opacity: 0; transform: translateX(-100%); }
}

/* breathing glow around the panel: permanent, slow */
#divLoginGlow {
    animation: LOGIN-FX-BREATH 6s ease-in-out infinite;
}

@keyframes LOGIN-FX-BREATH {
    0% { box-shadow: 0 0 0 0 rgba(90, 160, 255, 0); }
    50% { box-shadow: 0 0 26px 4px rgba(90, 160, 255, 0.45); }
    100% { box-shadow: 0 0 0 0 rgba(90, 160, 255, 0); }
}

/* 6 - light curtain drifting across */
#divLoginFX .fx-curtain {
    top: 0;
    bottom: 0;
    left: 0;
    width: 60%;
    background: linear-gradient(90deg, rgba(150, 200, 255, 0), rgba(150, 200, 255, 0.11), rgba(150, 200, 255, 0));
}

#divLoginFX.FX6 .fx-curtain {
    animation: LOGIN-FX-CURTAIN 4.8s ease-in-out both;
}

@keyframes LOGIN-FX-CURTAIN {
    0% { opacity: 0; transform: translateX(-110%); }
    20% { opacity: 1; }
    80% { opacity: 1; }
    100% { opacity: 0; transform: translateX(180%); }
}

/* 8 - soft ripples spreading from the middle */
#divLoginFX .fx-ripple {
    top: 55%;
    left: 50%;
    width: 40px;
    height: 40px;
    margin: -20px 0 0 -20px;
    border-radius: 50%;
    border: 1px solid rgba(190, 225, 255, 0.6);
}

#divLoginFX.FX8 .fx-ripple {
    animation: LOGIN-FX-RIPPLE 3s ease-out both;
}

#divLoginFX.FX8 .fx-ripple.r2 {
    animation-delay: 0.6s;
}

@keyframes LOGIN-FX-RIPPLE {
    0% { opacity: 0.8; transform: scale(0.2); }
    100% { opacity: 0; transform: scale(9); }
}

/* [END] shining effects */

/* [BEGIN] note under the login panel when the latest release is major (Login.aspx: FlagMajorUpdate) */
#divMajorUpdate {
    max-width: 380px;
    margin: 1.1em auto 0 auto;
    padding: 0.7em 1em 0.7em 0.9em;
    color: #33436f;
    font-size: 0.85em !important;
    line-height: 1.35;
    background: rgba(255, 255, 255, 0.55);
    border: 1px solid rgba(45, 140, 255, 0.28);
    border-left: 5px solid #2d8cff;
    border-radius: 10px !important;
    box-shadow: -3px 0 9px -1px rgba(45, 140, 255, 0.6);
    animation: LOGIN-MAJOR-BOX 3s ease-in-out infinite;
}

    #divMajorUpdate * {
        font-size: 1em !important;
    }

@keyframes LOGIN-MAJOR-BOX {
    0%, 100% { border-left-color: rgba(45, 140, 255, 0.35); box-shadow: -2px 0 4px -1px rgba(45, 140, 255, 0.2); }
    50% { border-left-color: #2d8cff; box-shadow: -4px 0 14px 0 rgba(45, 140, 255, 0.75); }
}

@media (prefers-reduced-motion: reduce) {
    #divMajorUpdate { animation: none; }
}
/* [END] major update note */

/* "No Logins" is on (Admin Centre): notice above the login panel */
.NOLOGINS {
    display: block;
    max-width: 380px;
    margin: 0 auto 62px auto; /* room for the logo that overlaps the top of the login panel */
    padding: 0.9em 1.1em;
    background: #FFF3CD;
    color: #5A3A00;
    border: 1px solid #E0A800;
    border-left: 6px solid #D00000;
    border-radius: 10px;
    font-size: 14px;
    line-height: 1.45;
    text-align: left;
    box-shadow: 0 8px 22px rgba(3, 10, 40, 0.35);
}

    .NOLOGINS * {
        font-size: inherit;
        color: inherit;
    }

    .NOLOGINS b {
        font-size: 16px;
        color: #B00000;
    }

/* "No Logins" notice: on big screens there is plenty of room above the login panel, so it is lifted up (position only, the panel does
   not move); the smaller the screen, the less it is lifted, and on short screens it also gets a smaller font (so it never covers the
   OPTIC logo that overlaps the top of the login panel). */
.NOLOGINS { position: relative; top: -110px; font-size: 14px !important; }

@media only screen and (max-height: 1000px) { .NOLOGINS { top: -100px; } }
@media only screen and (max-height: 900px)  { .NOLOGINS { top: -90px; } }
@media only screen and (max-height: 736px)  { .NOLOGINS { top: -40px; font-size: 13px !important; } .NOLOGINS b { font-size: 14px !important; } }
@media only screen and (max-height: 670px)  { .NOLOGINS { top: -34px; font-size: 12.5px !important; margin-bottom: 52px; padding: 0.6em 0.9em; } .NOLOGINS b { font-size: 13px !important; } }
@media only screen and (max-height: 610px)  { .NOLOGINS { top: -34px; font-size: 12px !important; margin-bottom: 44px; padding: 0.5em 0.8em; line-height: 1.35; } .NOLOGINS b { font-size: 12.5px !important; } }
@media only screen and (max-width: 480px)   { .NOLOGINS { top: 0; font-size: 12.5px !important; } .NOLOGINS b { font-size: 13.5px !important; } }

/* "No Logins" notice fades when logins are enabled / disabled while the Login page is open (see the script at the end of Login.aspx) */
.NOLOGINS { transition: opacity 0.6s ease; }
.NOLOGINS.NOLOGINS-HIDDEN { opacity: 0; }
