/* Beneficial 009 — calmer login, stable form controls. */
#loading{background:var(--ivory);color:var(--ink)}#loading .brand-loader img{width:34px!important;height:42px!important}#loading .brand-loader span{font-size:24px!important}
.login-screen{min-height:100vh!important;padding:34px!important;display:grid!important;place-items:center!important;background:radial-gradient(circle at top left,rgba(166,194,160,.12),transparent 24%),radial-gradient(circle at bottom right,rgba(230,121,96,.12),transparent 26%),linear-gradient(180deg,#173b70,#12366b)!important;position:relative;overflow:hidden}.login-screen:before,.login-screen:after{content:"";position:absolute;border-radius:50%;pointer-events:none;z-index:0}.login-screen:before{width:520px;height:520px;left:-210px;top:-180px;border:1px solid rgba(255,255,255,.05)}.login-screen:after{width:420px;height:420px;right:-150px;bottom:-140px;border:1px solid rgba(255,255,255,.05)}
.login-card-clean{position:relative;z-index:2;width:min(1020px,100%);min-height:610px;display:grid;grid-template-columns:.88fr 1.12fr;background:var(--ivory);border-radius:32px;overflow:hidden;box-shadow:0 34px 110px rgba(0,0,0,.28)}.login-side{padding:42px;background:#1d457f;color:var(--ivory);display:flex;flex-direction:column;position:relative;overflow:hidden}.login-side:after{content:"";position:absolute;width:320px;height:320px;border:1px solid rgba(250,248,243,.12);border-radius:50%;right:-150px;bottom:-150px;box-shadow:0 0 0 44px rgba(250,248,243,.03),0 0 0 88px rgba(250,248,243,.015)}.login-brand-clean{display:flex;gap:12px;align-items:center;position:relative;z-index:1}.login-brand-clean img{width:40px;height:40px}.login-brand-clean strong,.login-brand-clean small{display:block}.login-brand-clean strong{font:700 27px Georgia,serif;letter-spacing:-.035em}.login-brand-clean small{font-size:6.5px;letter-spacing:.21em;color:var(--sage);font-weight:900;margin-top:2px}
.login-side-copy{margin:auto 0;position:relative;z-index:1}.login-side-copy>span,.login-form-copy-clean>span{font-size:9px;letter-spacing:.20em;font-weight:900;color:var(--sage)}.login-side-copy h1{font:700 56px/.94 Georgia,serif;letter-spacing:-.04em;margin:14px 0 18px}.login-side-copy p{font-size:14px;line-height:1.75;color:#d6dfdb;max-width:420px}.login-dots{display:flex;gap:7px;position:relative;z-index:1}.login-dots i{width:8px;height:8px;border-radius:50%;background:rgba(250,248,243,.24)}.login-dots i:first-child{background:var(--terra)}.login-dots i:nth-child(2){background:var(--sage)}
.login-form-panel{padding:48px 54px 42px;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:2}.login-home{position:absolute;top:28px;right:34px;font-size:10px;color:var(--muted)}.login-form-copy-clean>span{color:var(--terra)}.login-form-copy-clean h2{font:700 56px/.96 Georgia,serif;letter-spacing:-.04em;margin:10px 0 10px}.login-form-copy-clean p{font-size:14px;color:var(--muted);margin:0 0 18px;line-height:1.65}.login-form-panel form{position:relative;z-index:3}.login-form-panel form>label,.password-label-row label{display:block;font-size:10px;font-weight:900;margin:13px 0 6px;color:var(--ink)}.login-form-panel input{display:block;width:100%;min-height:56px;border:1px solid #d9d0c4;background:#fff;border-radius:16px;padding:0 16px;color:var(--ink);outline:none;transition:border-color .18s,box-shadow .18s}.login-form-panel input:focus{border-color:var(--ink);box-shadow:0 0 0 4px rgba(15,45,91,.08)}.password-label-row{display:flex;justify-content:space-between;align-items:end}.caps-warning{font-size:9px;color:var(--terra);font-weight:900}.password-input-wrap{position:relative}.password-input-wrap input{padding-right:84px}.password-input-wrap button{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:#f1ece4;color:var(--ink);padding:8px 12px;border-radius:999px;font-size:10px;font-weight:900;cursor:pointer}.login-submit-clean{position:relative;z-index:4;touch-action:manipulation;cursor:pointer;width:100%;margin-top:18px;display:flex!important;gap:9px;justify-content:center}.login-submit-clean:disabled{opacity:.74;cursor:wait}.login-submit-clean.loading b{animation:loginArrow .7s ease-in-out infinite alternate}.login-submit-clean.success{background:#557c62}.login-foot-clean{display:flex;justify-content:space-between;margin-top:18px;color:var(--muted);font-size:10px;border-top:1px solid var(--line);padding-top:14px}#login-error{margin-top:12px;position:relative;z-index:4}
@keyframes loginArrow{to{transform:translateX(5px)}}@media(max-width:860px){.login-card-clean{grid-template-columns:1fr;min-height:auto}.login-side{display:none}.login-form-panel{min-height:640px}}@media(max-width:560px){.login-screen{padding:0!important;background:var(--ivory)!important}.login-screen:before,.login-screen:after{display:none}.login-card-clean{min-height:100vh;border-radius:0;box-shadow:none}.login-form-panel{min-height:100vh;padding:70px 22px 28px}.login-home{top:24px;right:22px}.login-form-copy-clean h2{font-size:44px}}
@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* 010: auth interaction recovery */
#login-form.auth-shake{animation:authShake .32s ease}
#login-error{display:block;margin-top:12px;border-radius:12px;padding:10px 12px;background:#FBE8E3;color:#8D3E31;font-size:11px;line-height:1.45}
#login-error.hidden{display:none!important}
.login-submit-clean{pointer-events:auto!important;user-select:none;-webkit-tap-highlight-color:transparent}
.login-submit-clean.loading{opacity:.78}
.login-submit-clean.success{background:#557C62!important}
@keyframes authShake{20%{transform:translateX(-5px)}40%{transform:translateX(4px)}60%{transform:translateX(-3px)}80%{transform:translateX(2px)}}


/* Beneficial 013 — login is its own viewport, never followed by dashboard DOM */
body.auth-only .login-screen{height:100vh;min-height:100vh!important;overflow:auto}
body.auth-only .login-card-clean{max-height:calc(100vh - 68px)}
@media(max-height:720px){body.auth-only .login-card-clean{min-height:560px;max-height:none}body.auth-only{overflow:auto}}

/* BENEFICIAL_044_GLOBAL_SOFT_SURFACE */
body{
  background:#f4f0e8 !important;
}
.container,
.page-shell,
.main-shell,
.content-shell{
  max-width:1480px;
  margin-left:auto !important;
  margin-right:auto !important;
}
section,
.card,
.panel{
  box-shadow:none !important;
}
