.login-page { position: relative; min-height: 100vh; min-height: 100dvh; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 16px; box-sizing: border-box; background-image: url("/login-bg.webp"); background-size: cover; background-position: center; background-repeat: no-repeat; } .login-page::before { content: ""; position: fixed; inset: 0; background: rgba(15, 25, 45, 0.22); pointer-events: none; z-index: 0; } .login-page > * { position: relative; z-index: 1; } .login-glass { background: rgba(255, 255, 255, 0.58); backdrop-filter: blur(18px) saturate(1.15); -webkit-backdrop-filter: blur(18px) saturate(1.15); border: 1px solid rgba(255, 255, 255, 0.55); box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12); } .login-page__brand { margin-bottom: 20px; padding: 12px 20px; border-radius: 12px; max-width: 100%; } .login-page__brand span { color: #1677ff !important; text-shadow: 0 1px 2px rgba(255, 255, 255, 0.8); } .login-page__card { width: 100%; max-width: 400px; border-radius: 12px; overflow: hidden; } .login-page__card.ant-card { background: rgba(255, 255, 255, 0.72); backdrop-filter: blur(20px) saturate(1.2); -webkit-backdrop-filter: blur(20px) saturate(1.2); border: 1px solid rgba(255, 255, 255, 0.65); box-shadow: 0 12px 40px rgba(0, 0, 0, 0.18); } .login-page__card .ant-card-head { background: rgba(255, 255, 255, 0.35); border-bottom: 1px solid rgba(0, 0, 0, 0.06); } .login-page__card .ant-card-body { background: transparent; } .login-page__card .ant-input, .login-page__card .ant-input-affix-wrapper { background: rgba(255, 255, 255, 0.85); }