/* Minimal white iOS-inspired login with Bootstrap-style one-open-at-a-time collapse. */
#loginView.login-overlay{background:#fff!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;padding:24px 16px!important}
#loginView .login-blur{display:none!important}
#loginForm.login-card{width:min(560px,100%)!important;max-width:560px!important;margin:auto!important;padding:38px 38px 24px!important;border:1px solid #edf0f4!important;border-radius:28px!important;background:#fff!important;box-shadow:0 18px 50px rgba(15,23,42,.06)!important;text-align:center!important}
#loginForm .login-logo{width:96px!important;height:96px!important;object-fit:contain!important;margin:0 auto 22px!important;filter:none!important}
#loginForm>h2{margin:0 0 28px!important;color:#182230!important;font-size:clamp(28px,4vw,36px)!important;font-weight:700!important;line-height:1.18!important;letter-spacing:-.025em!important}
.login-method-shell{width:100%}.login-accordion{display:grid;gap:10px;width:100%}.login-accordion-item{display:grid;gap:0;width:100%;min-width:0}.login-accordion-item[hidden]{display:none!important}
.login-accordion-toggle{width:100%;min-width:0;min-height:56px;border:1px solid #e0e5eb;border-radius:14px;background:#fff;color:#1d2939;font:inherit;font-size:15px;font-weight:600;display:grid;grid-template-columns:42px minmax(0,1fr) 28px;align-items:center;padding:0 12px;cursor:pointer;box-shadow:none;transition:border-color .18s ease,background .18s ease,transform .18s ease,color .18s ease}.login-accordion-toggle>span:nth-child(2){grid-column:2;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.login-accordion-toggle:hover{border-color:#cbd5e1;background:#fbfcfe}.login-accordion-toggle:active{transform:scale(.997)}.login-accordion-item.active>.login-accordion-toggle{border-color:#b9d4f5;background:#f8fbff;color:#1769c2}.login-accordion-item[data-method="hosxp"].active>.login-accordion-toggle{display:none}
.login-accordion-icon{grid-column:1;width:30px;height:30px;display:grid;place-items:center;justify-self:center}.login-accordion-icon.google svg{width:22px;height:22px;display:block}.login-accordion-icon.hosxp{color:#1769c2;background:#eef5ff;border-radius:9px}.login-accordion-icon.hosxp svg{width:18px;height:18px;fill:currentColor;stroke:none}.login-accordion-icon.msh{color:#1aa66a;border:1px solid rgba(26,166,106,.28);border-radius:50%}.login-accordion-icon.msh svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.login-accordion-chevron{grid-column:3;display:grid;place-items:center;color:#98a2b3;transition:transform .22s ease,color .18s ease}.login-accordion-chevron svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.login-accordion-item.active>.login-accordion-toggle .login-accordion-chevron{transform:rotate(90deg);color:#1769c2}
.login-collapse{height:0;width:100%;min-width:0;opacity:0;overflow:hidden;transform:translateY(-5px);transition:height .28s cubic-bezier(.2,.7,.2,1),opacity .2s ease,transform .28s cubic-bezier(.2,.7,.2,1),margin .28s ease;margin:0}.login-collapse[hidden]{display:none!important}.login-collapse.show{opacity:1;transform:none;margin-top:10px}.login-accordion-item[data-method="hosxp"].active>.login-collapse{margin-top:0}.login-collapse-inner{min-height:0;min-width:0;width:100%;max-width:100%;overflow:visible;box-sizing:border-box}
.login-primary-panel{display:grid;gap:12px;width:100%}.login-field{min-height:62px!important;width:100%!important;margin:0!important;padding:0 15px!important;border:1px solid #dfe4eb!important;border-radius:14px!important;background:#fff!important;display:flex!important;align-items:center!important;gap:12px!important;color:#98a2b3!important;box-shadow:none!important;transition:border-color .16s ease,box-shadow .16s ease}.login-field:focus-within{border-color:#8db9f1!important;box-shadow:0 0 0 3px rgba(31,122,236,.07)!important}.login-field-icon{display:grid;place-items:center;flex:0 0 26px;width:26px;height:26px;color:#7f8998}.login-field-icon svg,.login-eye svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.login-field-copy{display:flex;flex:1 1 auto;min-width:0;align-items:center}.login-field-copy input{width:100%!important;min-width:0!important;height:auto!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;outline:0!important;color:#1d2939!important;font:inherit!important;font-size:16px!important;font-weight:500!important;line-height:1.35!important}.login-field-copy input::placeholder{color:#9aa3b0!important;opacity:1!important}.login-eye{flex:0 0 34px;width:34px;height:34px;border:0;background:transparent;color:#7f8998;border-radius:50%;display:grid;place-items:center;padding:0;cursor:pointer}.login-eye:hover{background:#f5f7fa;color:#667085}.login-eye.visible{color:#1769c2}
.login-primary-button{width:100%;min-height:54px;margin:2px 0 0;border:0;border-radius:14px;background:#1f7aec;color:#fff;font:inherit;font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:none;cursor:pointer;transition:transform .14s ease,filter .14s ease}.login-primary-button:hover:not(:disabled){filter:brightness(.98)}.login-primary-button:active:not(:disabled){transform:scale(.995)}.login-primary-button:disabled{opacity:.58;cursor:default}.hosxp-login-error{min-height:0;margin:0;color:#b42318;font-size:12px;line-height:1.4;text-align:left}.hosxp-login-error:empty{display:none}
/* Google GIS: native account chooser uses the same horizontal width as the accordion buttons. No extra wrapper border. */
#googleMethodPanel{width:100%;max-width:100%;min-width:0;overflow:visible!important;box-sizing:border-box}
#googleMethodPanel .google-login-area{width:100%!important;max-width:100%!important;min-width:0;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;text-align:left;overflow:visible!important;box-shadow:none!important;box-sizing:border-box}
#googleMethodPanel .google-signin-button{display:block;width:100%!important;max-width:100%!important;min-width:0;min-height:44px;overflow:visible!important}
#googleMethodPanel .google-signin-button>div{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
#googleMethodPanel .google-signin-button iframe{display:block!important;width:100%!important;max-width:none!important;min-width:0!important;height:44px!important;margin:0!important;padding:0!important;box-sizing:border-box!important}
#googleMethodPanel .google-signin-button::before,#googleMethodPanel .google-signin-button::after{content:none!important;display:none!important}
#googleMethodPanel .google-login-hint{margin-top:7px;color:#98a2b3;font-size:12px;line-height:1.35}#googleMethodPanel .google-login-hint:empty{display:none}
.msh-account-form{display:grid;gap:10px}#mshMethodPanel>input{width:100%!important;margin:0!important;min-height:54px!important;border:1px solid #dfe4eb!important;border-radius:14px!important;background:#fff!important;padding:0 15px!important;font-size:16px!important}#mshMethodPanel>.login-submit{width:100%!important;margin:0!important;min-height:54px!important;border-radius:14px!important;box-shadow:none!important}#mshMethodPanel .error{margin-top:0!important}
.login-version{text-align:center;margin-top:22px;color:#9aa3b0;font-size:10px;font-weight:500;letter-spacing:.01em;line-height:1.35}
@media(max-width:560px){#loginView.login-overlay{padding:12px!important;align-items:center!important}#loginForm.login-card{padding:28px 18px 18px!important;border-radius:22px!important;box-shadow:none!important}#loginForm .login-logo{width:82px!important;height:82px!important;margin-bottom:18px!important}#loginForm>h2{font-size:28px!important;margin-bottom:24px!important}.login-field{min-height:58px!important;padding:0 13px!important;border-radius:13px!important}.login-field-copy input{font-size:16px!important}.login-primary-button,.login-accordion-toggle{min-height:52px;border-radius:13px}.login-accordion-toggle{font-size:14px;grid-template-columns:36px minmax(0,1fr) 24px;padding:0 9px}.login-accordion-icon{width:28px;height:28px}.login-accordion-chevron svg{width:17px;height:17px}}
