.site-copyright,.app-copyright{color:var(--muted);font-size:11px;line-height:1.7;text-align:center}.totp-expiring{color:var(--danger)}
.app-copyright{padding:8px 20px 24px}.totp-secret{font-family:Consolas,monospace;letter-spacing:1px;font-weight:700}
.login-form details{font-size:11px;color:var(--muted)}.login-form details textarea{margin-top:8px;font-size:11px;min-height:70px}
.auth-error{padding:10px 12px;border:1px solid #efc8c4;border-left:3px solid var(--danger);border-radius:4px;background:#fff5f4;color:var(--danger)}
.totp-qr{width:204px;height:204px;margin:0 auto;display:grid;place-items:center;border:1px solid var(--line);border-radius:5px;background:#fff}.totp-qr svg{display:block;width:188px;height:188px}.totp-qr-error{padding:20px;color:var(--danger);font-size:12px;text-align:center}

.login-page{position:relative;min-height:100vh;min-height:100dvh;display:grid;place-items:center;isolation:isolate;background:#0e1816 url("login-server-room-public-domain.jpg") center/cover fixed no-repeat}
.login-page::before{content:"";position:fixed;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(6,15,13,.93) 0%,rgba(6,15,13,.72) 46%,rgba(6,15,13,.47) 100%)}
.login-page::after{content:"";position:fixed;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.28))}
.login-shell{width:min(1180px,calc(100% - 64px));min-height:auto;padding:40px 0;display:grid;grid-template-columns:minmax(340px,1fr) 420px;gap:clamp(48px,8vw,120px);align-items:center;background:transparent;box-shadow:none}
.login-brand{max-width:600px;padding:0;background:transparent;color:#fff}
.login-brand .brand-mark{width:44px;height:44px;border:1px solid rgba(255,255,255,.52);border-radius:6px;background:rgba(255,255,255,.11);color:#fff;font-size:13px;backdrop-filter:blur(8px)}
.login-brand h1{margin:24px 0 9px;font-size:38px;line-height:1.2;font-weight:700}.login-brand p{max-width:460px;margin:0;color:#c4d0cc;font-size:14px;line-height:1.8}
.login-form{width:420px;min-height:0;padding:32px 34px 28px;display:grid;gap:17px;align-content:start;border:1px solid rgba(255,255,255,.65);border-radius:7px;background:rgba(250,252,251,.98);box-shadow:0 28px 70px rgba(2,10,8,.42)}
.login-form::before{display:none}.login-heading{padding-bottom:4px}.login-heading h2{margin:0 0 5px;font-size:21px;line-height:1.3;color:#18221f}.login-heading p{margin:0;color:#7a8581;font-size:12px}
.login-form>label{font-size:12px}.login-form input{height:42px;background:#fff}.login-form button.primary{height:42px;margin-top:1px;font-weight:700}
.login-form>small{color:#89938f;font-size:10px;text-align:center}.login-form .site-copyright{margin-top:-1px;color:#7d8985}

@media(max-width:820px){
  .login-page{display:block;background-attachment:scroll;background-position:44% center}.login-page::before{background:linear-gradient(180deg,rgba(6,15,13,.72),rgba(6,15,13,.5))}
  .login-shell{width:100%;min-height:100dvh;margin:0;padding:26px 18px 34px;display:grid;grid-template-columns:1fr;gap:24px;align-content:start}
  .login-brand{display:block;padding:4px 2px 0}.login-brand .brand-mark{width:40px;height:40px}.login-brand h1{margin:16px 0 4px;font-size:27px}.login-brand p{font-size:12px}
  .login-form{width:min(100%,440px);min-height:0;margin:0 auto;padding:28px 25px 25px;border-radius:7px;box-shadow:0 18px 50px rgba(2,10,8,.34)}
}
@media(max-width:400px){.login-shell{padding:20px 12px 28px;gap:18px}.login-brand{padding-left:5px}.login-brand p{display:none}.login-form{padding:25px 20px 23px}.login-heading h2{font-size:19px}.totp-qr{width:190px;height:190px}.totp-qr svg{width:176px;height:176px}}
