/*
 * DSE Webmail skin overrides
 * Version: 1.0.0 (2026-08-19)
 * Scope: MailEnable 10.59 / Mondo skin clone only
 * Palette: #061126 #091A38 #102851 #F0B828 #FCE466 #F3F6FA
 */

:root {
    --dse-navy-950: #061126;
    --dse-navy-900: #091A38;
    --dse-navy-800: #102851;
    --dse-gold: #F0B828;
    --dse-gold-highlight: #FCE466;
    --dse-gold-edge: #AC740C;
    --dse-canvas: #F3F6FA;
    --dse-white: #FFFFFF;
    --dse-ink: #101B31;
    --dse-muted: #536077;
    --dse-border: #D7DFEB;
    --dse-radius: 10px;
    --dse-shadow: 0 18px 50px rgba(6, 17, 38, 0.24);
}

html,
body,
input,
textarea,
select,
button {
    font-family: "Segoe UI", Inter, Arial, sans-serif !important;
}

body {
    color: var(--dse-ink);
    background-color: var(--dse-canvas);
}

a,
a:link,
a:visited {
    color: #174FA8;
}

input,
select,
textarea {
    color: var(--dse-ink);
    background: var(--dse-white);
    border: 1px solid #B9C5D6;
    border-radius: 8px;
    box-shadow: none;
}

input:focus,
select:focus,
textarea:focus {
    outline: 3px solid rgba(240, 184, 40, 0.26) !important;
    outline-offset: 0;
    border-color: var(--dse-gold-edge) !important;
    box-shadow: 0 0 0 1px var(--dse-gold) !important;
}

/* Premium DSE sign-in experience */
.login_bg {
    position: relative;
    min-width: 0;
    background-color: var(--dse-navy-950) !important;
    background-image:
        linear-gradient(115deg, rgba(6, 17, 38, 0.40), rgba(6, 17, 38, 0.84)),
        url("dse-webmail-background.png") !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: cover !important;
}

.login_shell {
    position: relative;
    z-index: 1;
    padding: 34px 24px;
    box-sizing: border-box;
}

.login_panel {
    display: flex;
    align-items: stretch;
    width: 900px !important;
    height: 520px !important;
    padding: 0 !important;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.24) !important;
    border-radius: 14px;
    background: var(--dse-white) !important;
    box-shadow: var(--dse-shadow) !important;
    box-sizing: border-box;
}

.login_panel_left {
    position: relative;
    float: left;
    width: 340px !important;
    height: 520px !important;
    margin: 0 !important;
    overflow: hidden;
    background:
        linear-gradient(155deg, rgba(16, 40, 81, 0.54), rgba(6, 17, 38, 0.98)),
        url("dse-webmail-background.png") center center / cover no-repeat;
    border-right: 1px solid rgba(240, 184, 40, 0.35);
    box-sizing: border-box;
    flex: 0 0 340px;
}

.login_panel_left::before {
    content: "DSE SECURE MAIL";
    position: absolute;
    top: 38px;
    left: 38px;
    z-index: 3;
    color: var(--dse-gold-highlight);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.18em;
}

.login_panel_left::after {
    content: "Protected communication. Professional delivery.";
    position: absolute;
    right: 38px;
    bottom: 42px;
    left: 38px;
    z-index: 3;
    color: rgba(255, 255, 255, 0.82);
    font-size: 14px;
    line-height: 1.55;
}

.login_panel_left_inner {
    position: relative;
    z-index: 2;
    width: 340px !important;
    height: 520px !important;
    box-sizing: border-box;
}

.login_panel_left_inner img {
    width: 204px !important;
    height: 204px !important;
    max-width: 204px !important;
    max-height: 204px !important;
    object-fit: contain;
    content: url("dse-logo.png");
    filter: drop-shadow(0 12px 20px rgba(0, 0, 0, 0.34));
}

.login_panel_right {
    position: relative;
    float: left;
    width: auto !important;
    min-width: 0;
    height: 520px !important;
    padding: 48px 56px 38px;
    background: var(--dse-white);
    box-sizing: border-box;
    flex: 1 1 auto;
}

.login_panel_right::before {
    content: "AUTHORIZED ACCESS";
    display: block;
    margin: 0 0 12px;
    color: #7A5A09;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.16em;
}

.login_panel h1 {
    width: auto;
    margin: 0 0 28px;
    padding: 0;
    border: 0;
    color: var(--dse-navy-950);
    font-size: 32px;
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -0.025em;
}

.login_panel h1::after {
    content: "Use your full email address and mailbox password.";
    display: block;
    max-width: 390px;
    margin-top: 10px;
    color: var(--dse-muted);
    font-size: 13px;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: 0;
}

.login_panel #txtUsername,
.login_panel #txtPassword {
    height: 46px;
    margin: 4px 0 13px;
    padding: 10px 42px 10px 13px;
    color: var(--dse-ink);
    font-size: 14px;
    line-height: 24px;
    background: #FBFCFE;
    border: 1px solid #B9C5D6;
    border-radius: 9px;
}

.login_panel #togglepwd {
    color: var(--dse-navy-800);
}

.login_lang_table {
    margin: 6px 0 13px;
}

.login_lang_table td {
    color: var(--dse-muted);
    font-size: 11px;
    font-weight: 600;
    line-height: 1.35;
}

.login_lang_table td:last-child,
.login_lang_table_mid {
    display: none !important;
}

.login_lang_table td:first-child {
    width: 100% !important;
}

.login_lang_table select {
    height: 36px;
    margin-top: 4px;
    padding: 6px 10px;
    background-color: var(--dse-white);
}

.login_remember_checkbox {
    margin: 0 0 18px;
}

.login_remember_checkbox label {
    top: -2px;
    color: var(--dse-muted);
    font-size: 12px;
}

.login_panel #chkRemember {
    accent-color: var(--dse-gold-edge);
}

.login_bttn_shell {
    margin: 0;
}

.login_bttn_shell .bttn_shell {
    height: 40px;
    margin-right: 8px;
    border-radius: 8px;
    box-shadow: none;
}

.login_bttn_shell .bttn {
    height: 24px;
    min-width: 92px;
    padding: 8px 18px;
    font-size: 13px;
    font-weight: 700;
    line-height: 24px;
}

.login_bttn_shell .bttn_shell.blue,
.login_bttn_shell .bttn_shell.blue:hover,
.login_bttn_shell .bttn_shell.blue:focus,
.login_bttn_shell .bttn_shell.blue:active {
    color: var(--dse-navy-950) !important;
    border: 1px solid var(--dse-gold-edge) !important;
    background: var(--dse-gold) !important;
    box-shadow: 0 6px 14px rgba(172, 116, 12, 0.18) !important;
    filter: none !important;
}

.login_bttn_shell .bttn_shell.blue .bttn {
    color: var(--dse-navy-950) !important;
}

.login_bttn_shell .bttn_shell:not(.blue) {
    border-color: #C5CEDA;
    background: var(--dse-white) !important;
}

.login_foot_nav {
    right: 56px;
    bottom: 28px;
    left: auto;
    width: 448px;
    cursor: default;
    font-size: 0;
}

.login_foot_nav a,
.login_foot_nav a:visited {
    color: var(--dse-muted);
    font-size: 11px;
}

.login_foot_nav #MobileVersion {
    display: none;
}

.login_copyright {
    width: 900px;
    padding-top: 10px;
    color: rgba(255, 255, 255, 0.72);
    text-align: center;
}

.login_copyright a,
.login_copyright a:visited {
    color: rgba(255, 255, 255, 0.82);
}

.validationErrors,
.feedbackMessage {
    border-radius: 8px;
}

/* Modern DSE application chrome */
.topNav,
.itopNav {
    color: var(--dse-white);
    background: linear-gradient(115deg, var(--dse-navy-950), var(--dse-navy-800)) !important;
    border-bottom: 2px solid var(--dse-gold);
    box-shadow: 0 7px 18px rgba(6, 17, 38, 0.22) !important;
    filter: none !important;
}

.topNav_logo_inner img {
    width: 58px !important;
    height: 58px !important;
    margin: 6px 0 0 11px;
    object-fit: contain;
    content: url("dse-logo.png");
}

.topNav_bttn,
.topNav_bttn_selected {
    border-radius: 8px 8px 0 0 !important;
}

.topNav_bttn:hover {
    background: rgba(255, 255, 255, 0.10) !important;
    box-shadow: none !important;
    filter: none !important;
}

.topNav_bttn_selected,
.topNav_bttn_selected:nth-child(n) {
    color: var(--dse-navy-950) !important;
    background: linear-gradient(180deg, var(--dse-gold-highlight), var(--dse-gold)) !important;
    box-shadow: 0 -2px 0 rgba(255, 255, 255, 0.25) inset !important;
    filter: none !important;
}

.topNav_bar,
.itopNav_bar {
    background: #F8FAFD !important;
}

.header_shell,
.iHeader_shell {
    border-bottom-color: #C9D2DF;
}

.footer_shell {
    color: var(--dse-white);
    border-top: 1px solid rgba(240, 184, 40, 0.45);
    background: var(--dse-navy-950) !important;
}

.footer_shell .blueStatusBar_table {
    color: var(--dse-white) !important;
}

.folderList_shell {
    color: var(--dse-ink);
    background: #F8FAFD;
}

.folderList_shell span {
    border-radius: 6px;
}

.folderList_shell span:hover {
    border-color: #D5B14B;
    background: #FFF8E4;
}

.folderList_shell span.selected {
    color: var(--dse-navy-950);
    font-weight: 700;
    border-color: #D5B14B;
    background: #FFF1BF;
}

.bttn_shell,
.bttn_float_left,
.bttn_float_right,
.bttn_toolbar_primary_shell,
.bttn_toolbar_primary_shell_right,
.bttn_dropDown_float_left,
.bttn_dropDown_float_right,
.bttn_dropDown2_shell {
    border-radius: 7px !important;
    border-color: #B9C5D6 !important;
    background: var(--dse-white) !important;
    box-shadow: 0 1px 2px rgba(6, 17, 38, 0.06) !important;
    filter: none !important;
}

.bttn_shell:hover,
.bttn_float_left:hover,
.bttn_float_right:hover,
.bttn_toolbar_primary_shell:hover,
.bttn_toolbar_primary_shell_right:hover,
.bttn_dropDown_float_left:hover,
.bttn_dropDown_float_right:hover,
.bttn_dropDown2_shell:hover {
    border-color: var(--dse-gold-edge) !important;
    background: #FFF8E4 !important;
}

.bttn_shell.blue,
.bttn_toolbar_primary_shell.blue,
.bttn_shell.blue:hover,
.bttn_toolbar_primary_shell.blue:hover,
.bttn_shell.blue:focus,
.bttn_toolbar_primary_shell.blue:focus {
    color: var(--dse-navy-950) !important;
    border-color: var(--dse-gold-edge) !important;
    background: var(--dse-gold) !important;
    filter: none !important;
}

.bttn_shell.blue .bttn,
.bttn_toolbar_primary_shell.blue .bttn_toolbar_primary_text {
    color: var(--dse-navy-950) !important;
    font-weight: 700;
}

.tabbedPanel_head,
.tableHead_shell,
.listView_header,
.toolbar_primary_table.popupWin {
    border-color: #C9D2DF !important;
    background: #EEF2F7 !important;
    filter: none !important;
}

.rightClickMenu_body_shell,
.dropDown_shell_mid,
.dropDown_body_shell {
    color: var(--dse-ink);
    border-color: #C9D2DF !important;
    background: var(--dse-white) !important;
    border-radius: 8px;
    box-shadow: 0 14px 30px rgba(6, 17, 38, 0.18) !important;
}

.rightClickMenu_body_shell li:hover {
    background: #FFF8E4;
}

@media (max-width: 980px) {
    .login_shell {
        padding: 22px 14px;
    }

    .login_panel {
        flex-direction: column;
        width: min(92vw, 620px) !important;
        height: auto !important;
        min-height: 560px;
    }

    .login_panel_left {
        float: none;
        width: 100% !important;
        height: 150px !important;
        border-right: 0;
        border-bottom: 1px solid rgba(240, 184, 40, 0.35);
        flex: 0 0 150px;
    }

    .login_panel_left::before {
        top: 20px;
        left: 24px;
    }

    .login_panel_left::after {
        right: 24px;
        bottom: 18px;
        left: auto;
        max-width: 260px;
        text-align: right;
    }

    .login_panel_left_inner {
        width: 100% !important;
        height: 150px !important;
        text-align: left;
        padding-left: 24px;
    }

    .login_panel_left_inner img {
        width: 88px !important;
        height: 88px !important;
        max-width: 88px !important;
        max-height: 88px !important;
    }

    .login_panel_right {
        float: none;
        width: 100% !important;
        height: 410px !important;
        padding: 30px 34px 26px;
        flex: 0 0 410px;
    }

    .login_panel h1 {
        margin-bottom: 20px;
        font-size: 27px;
    }

    .login_panel h1::after {
        margin-top: 6px;
    }

    .login_foot_nav {
        right: 34px;
        bottom: 20px;
        width: calc(100% - 68px);
    }

    .login_copyright {
        width: min(92vw, 620px);
    }
}

@media (max-width: 560px) {
    .login_shell {
        vertical-align: top;
        padding-top: 12px;
    }

    .login_panel {
        width: 100% !important;
        min-height: 594px;
        border-radius: 12px;
    }

    .login_panel_left {
        height: 118px !important;
        flex-basis: 118px;
    }

    .login_panel_left::before {
        top: 48px;
        left: 128px;
        font-size: 10px;
        line-height: 1.25;
    }

    .login_panel_left::after {
        display: none;
    }

    .login_panel_left_inner {
        height: 118px !important;
    }

    .login_panel_left_inner img {
        width: 76px !important;
        height: 76px !important;
        max-width: 76px !important;
        max-height: 76px !important;
    }

    .login_panel_right {
        height: 476px !important;
        padding: 26px 22px 24px;
        flex-basis: 476px;
    }

    .login_panel h1 {
        font-size: 25px;
    }

    .login_lang_table td {
        display: block;
        width: 100% !important;
    }

    .login_lang_table_mid {
        display: none !important;
    }

    .login_foot_nav {
        right: 22px;
        bottom: 18px;
        width: calc(100% - 44px);
    }

    .login_copyright {
        width: 100%;
        font-size: 10px;
    }
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        transition: none !important;
        animation: none !important;
    }
}
