
/** Hide toolbar on login page **/
.mstrToolbarWrapper {
    display: none !important;
}

/* Cancel OOTB white radial gradient and the 50px footer padding — login page has its own layout */
.mstr-page-login #mstrWebContents {
    background: rgb(239,244,245) !important;
    padding-bottom: 0 !important;
}

body.mstrWeb {
    font-family: Poppins;
    font-size: 12px;
    font-weight: normal;
    color: #003e51;
    line-height: 17px;
    background-color: rgb(239,244,245) !important;
}

/* -------------------------------------------------------
   OOTB pageLogin.css sets these IDs with white backgrounds
   and large widths that overflow the 278px #login_box.
   Explicitly set the same gray as #login_box so there is
   no white box visible — transparent alone is not enough
   when #lb_LoginStyle also has background:#fff.
   ------------------------------------------------------- */
/* Title: bold to match production; 11pt keeps it single-line within 250px.
   Production looks "bigger" only because it is at higher browser zoom. */
#logintitle {
    font-size: 11pt !important;
    font-weight: bold !important;
    padding: 10px 12px 10px 12px !important;
    margin: 0 !important;
}

#lb_LoginStyle {
    width: 100% !important;
    max-width: none !important;
    border: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: rgb(143,157,163) !important;
    box-sizing: border-box !important;
}

.mstrLoginContainer {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    overflow: visible !important;
}

#divLogin {
    background: rgb(143,157,163) !important;
    margin: 0 !important;
    overflow: hidden !important;   /* contain children so no phantom height below button */
}

.mstrPanelPortrait {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.mstrPanelBody {
    background: rgb(143,157,163) !important;
    padding: 28px 10px 0 10px !important;   /* large top creates gap below title; 0 bottom kills dead space */
    margin: 0 !important;
}

/* Hide MSTR's own "LOGIN" panel title bar — JSP provides #logintitle */
.mstrPanelTitleBar {
    display: none !important;
}

.mstrTitle,
.mstrServer {
    display: none !important;
}

/* OOTB empty divs that add 40px+ of dead vertical space */
.mstrLoginOptions {
    display: none !important;
}

.mstrSpacer {
    display: none !important;
}

/* -------------------------------------------------------
   LABELS + INPUTS on the same line.
   OOTB sets .fld>label { display:none; position:absolute }
   Must reset BOTH display AND position, then use flex.
   ------------------------------------------------------- */
.mstrLoginFields {
    margin-bottom: 4px;
}

.mstrLoginFieldsGroup {
    margin-bottom: 0;
}

.mstrLoginFieldsGroup .fld {
    display: flex !important;
    align-items: center !important;
    position: static !important;   /* remove the relative positioning context */
    margin: 2px 0 !important;
    clear: none !important;
}

/* Show the label to the left of the input */
.mstrLoginFieldsGroup .fld > label {
    display: block !important;
    position: static !important;   /* OOTB sets position:absolute — reset it */
    top: auto !important;
    left: auto !important;
    height: auto !important;
    width: 78px !important;
    flex: 0 0 78px !important;
    padding-left: 0 !important;
    color: #ffffff !important;
    font-size: 8pt !important;
    font-weight: normal !important;
    line-height: normal !important;
    opacity: 1 !important;
}

/* OOTB sets mstrInputText to 278px — shrink it to fit alongside label */
.mstrInputText,
.mstrLoginFieldsGroup .mstrInputText {
    flex: 1 !important;
    width: auto !important;
    min-width: 0 !important;
    height: 22px !important;
    padding: 2px 4px !important;
    box-sizing: border-box !important;
    font-size: 8pt !important;
}

/* -------------------------------------------------------
   Login button: small, standard gray, centered.
   Cancel button: hidden.
   ------------------------------------------------------- */
.mstrLoginButtonBarRight {
    display: none !important;
}

.mstrLoginButtonBarLeft {
    display: block !important;
    float: none !important;
    width: 100% !important;
    text-align: center !important;
    margin: 4px 0 0 !important;
    padding: 0 !important;
}

.mstrLoginButtonBarLeft .mstrButton {
    display: inline-block !important;
    float: none !important;
    height: 21px !important;
    width: 42px !important;
    min-width: unset !important;
    font-size: 8pt !important;
    font-weight: normal !important;
    padding: 3px !important;
    border-radius: 3px !important;
    border: 1px solid silver !important;
    background: url(images/Login_button.jpg) no-repeat !important;
    color: #4d4d4d !important;
    cursor: pointer !important;
    margin: 3px !important;
    box-shadow: inset 0 0 6px 0 rgba(255,255,255,1) !important;
    text-indent: -100px !important;
    line-height: 1px !important;
}

.mstrLoginButtonBarLeft .mstrButton:hover {
    background: url(images/Login_button.jpg) no-repeat !important;
}

/* -------------------------------------------------------
   Remember me: centered
   ------------------------------------------------------- */
#rememberme {
    padding: 0 !important;
    margin-top: 2px !important;
    font-size: 11px;
    color: #ffffff;
    text-align: center;
}
